当前位置:网站首页>Getting started with pytest
Getting started with pytest
2022-07-03 06:44:00 【Xiaojing, who likes dumplings】
pytest Official website
Reference resources :link
pytest install
pip install pytest
pytest Case rules
pytest --help You can see pytest Help document for
C:\Users\Administrator>pytest --help
usage: pytest [options] [file_or_dir] [file_or_dir] […]
function pytest You can specify directories and files , If you don't specify ,pytest Will search for profiles testpaths The defined directory or the current directory and its subdirectories are marked with test_ Begin with or with _test At the end of the py file
[file_or_dir] You can specify a file or directory
We put pytest The process of searching test files and test cases is called test search (test discovery), As long as you follow pytest Naming rules ,pytest Can automatically search all test cases to be executed , The following rules :
(1) The test file should be named test_.py perhaps test.py
(2) Test functions 、 Test class methods should be named test
(3) The test class should be named Test, And there can be no __init__ Method
pytest Command line arguments
-v --verbose increase verbosity Show details
–collect-only Show which examples will be run , Only show cases without running
-k Use an expression to specify the case to run , have access to or and etc.
such as : The names of the two test cases test_asdict() and test_defaults(), Use –k When this parameter
pytest -k “asdict or defaults”
-m Specify tags to run
Test cases can use pytest.mark.mock perhaps pytest.mark,regression Such decorators are used to mark grouped test cases , Using parameter -m You can select tags to run
Such as , You need to run the test cases marked as smoke phase pytest -m “mock”
Expressions can use or and not etc.
-x Under normal circumstances ,pytest After encountering failed or abnormal use cases , We will continue to execute the next use case , If you want to let pytest Stop executing the failed use case , Use -x This parameter
–maxfail=num -x The feature of the option is , Once a test fails , It will stop globally , Suppose you allow pytest Fail several times and then stop , You can use –maxfail
-s Allow the terminal to output some results during the test run , Include any output information that meets the standard , such as print Information about
–capture=fd Written to a temporary file
–capture=sys Output memory
–lf When one or more tests fail , Locate the last failed test case and rerun , Only execute the last failed use case and re execute
E:\JenkinsLearn\My-pytest>pytest --lf
======================================================================= test session starts =======================================================================
platform win32 -- Python 3.8.5, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: E:\JenkinsLearn\My-pytest
plugins: cov-3.0.0
collected 1 item
run-last-failure: rerun previous 1 failure
test\test_my_add.py F
–ff --failed-first And –lf The same effect , however -ff Will run the remaining test cases
E:\JenkinsLearn\My-pytest>pytest --ff
======================================================================= test session starts =======================================================================
platform win32 -- Python 3.8.5, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: E:\JenkinsLearn\My-pytest
plugins: cov-3.0.0
collected 4 items
run-last-failure: rerun previous 1 failure first
test\test_my_add.py F...
-l --showlocals Use -l Options , The failed test case is traced by the stack , So the local variables and their only display
–tb=style --tb=styl Option determines how to display the output information when capturing failure , After a test case fails ,pytest Will list failure information , Including the line where the failure occurs , What is the failure , How to fail , This process is called “ Information backtracking ”
–tb=no Block all backtracking information
–tb=line Show the wrong location
–tb=short The backtracking information displayed is more detailed than the previous two modes
–tb=long Output the most auspicious backtracking information
–version Can display the current pytest Version and installation directory
边栏推荐
猜你喜欢

IC_EDA_ALL虚拟机(丰富版):questasim、vivado、vcs、verdi、dc、pt、spyglass、icc2、synplify、INCISIVE、IC617、MMSIM、工艺库

卡特兰数(Catalan)的应用场景

Docker advanced learning (container data volume, MySQL installation, dockerfile)

(翻译)异步编程:Async/Await在ASP.NET中的介绍

【无标题】

Yolov3 learning notes

Chapter 8. MapReduce production experience

Reinstalling the system displays "setup is applying system settings" stationary
![[classes and objects] explain classes and objects in simple terms](/img/41/250457530880dfe3728432c2ccd50b.png)
[classes and objects] explain classes and objects in simple terms

Asynchronous programming: async/await in asp Net
随机推荐
golang操作redis:写入、读取hash类型数据
2022 East China Normal University postgraduate entrance examination machine test questions - detailed solution
【C#/VB.NET】 将PDF转为SVG/Image, SVG/Image转PDF
Summary of remote connection of MySQL
How does the insurance company check hypertension?
Asynchronous programming: async/await in asp Net
每日刷題記錄 (十一)
error C2017: 非法的转义序列
100000 bonus is divided up. Come and meet the "sister who braves the wind and waves" among the winners
Printer related problem record
有意思的鼠標指針交互探究
Selenium - 改变窗口大小,不同机型呈现的宽高长度会不一样
Example of joint use of ros+pytoch (semantic segmentation)
[Code] occasionally take values, judge blanks, look up tables, verify, etc
Simple password lock
YOLOV1学习笔记
远端rostopic的本地rviz调用及显示
保险公司怎么查高血压?
简易密码锁
Decision tree of machine learning