general |
-k |
支持python的表达式,用于筛选指定标记/方法名的用例 |
-m |
根据用例标签来筛选用例,设置标签可以使用 @pytest.mark.<标签名> |
|
--markers |
打印标签,包括内置的,插件的,还有自定义的 |
|
-x |
第一个error或failed的test就退出 |
|
--fixtures |
显示可用的fixture,包括内置和自己写的,如果fixture使用 "_"开头则需要使用-v才能显示此fixture |
|
--fixtures-per-test |
展示每条用例的fixture |
|
--pdb |
当用例出现错误或者被键盘中断后,启动pdb调试 |
|
--pdbcls=modulename:classname |
启动自定义pdb debugger,一般用不到这个 |
|
--trace |
执行测试用例时break,进入debugger |
|
--capture=method |
标准输出/标准错误输出/标准输入的默认捕获,fd:标准输入,标准错误输出都会捕获;sys:只有向Python的sys.stdout和sys.stderr的写入行为会被捕获,不执行对文件描述符的写入的捕获;no:对print语句内容捕获,等同于 -s |
|
-s |
显示print语句的内容 |
|
--runxfail |
强制运行xfail标记的用例 |
|
--lf, --last-failed |
重新执行上次测试执行失败的用例,如果没有失败的用例,则执行全部用例 |
|
--ff, --failed-first |
优先跑上次失败的test,tests的顺序会被打乱 |
|
--nf, --new-first |
优先跑新添加的tests,剩余的按文件mtime顺序 |
|
--cache-show=[CACHESHOW] |
显示缓存,默认 * 显示所有缓存,可以带参数 pytest --cache-show=cache/nodeids |
|
--cache-clear |
在执行用例前,清理pytest缓存 |
|
--lfnf={all,none}, --last-failed-no-failures={all,none} |
没有last-failed缓存数据,或上次没有失败时,执行全部用例 |
|
--sw, --stepwise |
逐步运行,在失败时退出,下次运行时从失败的用例开始 |
|
--stepwise-skip |
跳过第一个失败的test,如果再遇到失败就退出 |
|
reporting |
--durations=N |
显示N个最慢的setup/test的耗时,N=0时,显示所有耗时 |
--durations-min=N |
显示N个最小的setup/test的耗时 |
|
-v, --verbose |
输出详细信息 |
|
--no-header |
不显示pytest消息头,只展示用例信息 |
|
--no-summary |
不显示用例执行完的summary info |
|
-q, --quiet |
静默模式,不输出任何内容 |
|
--verbosity=VERBOSE |
信息显示等级,貌似没啥用 |
|
-r chars |
-r f:显示failed信息;-r E:显示error信息;-r s:显示skipped信息;-r x:显示xfailed信息;-r X:显示xpassed信息;-r p:显示passed信息;-r P:显示 passed with output信息; -r a/A:显示 all except passed信息;-r w:显示默认告警信息;-r N:重置list |
|
--disable-warnings, --disable-pytest-warnings |
禁用pytest告警,如未注册的标记等 |
|
-l, --showlocal |
用例执行失败时,打印堆栈信息,默认被禁用 |
|
--tb=style |
traceback打印模式,一般设置为auto即可 |
|
--show-capture={no,stdout,stderr,log,all} |
失败的用例如何显示,默认为all |
|
--full-trace |
不截取traceback,默认会截断 |
|
--color=color |
是否显示彩色,yes:显示颜色;no:不显示颜色;auto:自动 |
|
--code-highlight={yes,no} |
代码是否高亮显示,一般用不到 |
|
--pastebin=mode |
没什么用的参数,我也不知道干嘛的 |
|
--junit-xml=path |
在给定的path路径下生成junit-xml风格的测试报告 |
|
--junit-prefix=str |
在junit-xml输出中的classnames添加前缀 |
|
pytest-warnings |
-W PYTHONWARNINGS, --pythonwarnings=PYTHONWARNINGS |
设置报告哪些warnings |
--maxfail=num |
出现num个errors或者fails就退出测试 |
|
--strict-config |
解析配置文件中pytest部分时,遇到warning就抛出error |
|
--strict-markers, --strict |
发现未知标记时,抛出error, |
|
-c file |
从指定配置文件加载配置,默认为pytes.ini |
|
--continue-on-collection-errors |
在收集用例时发生错误,也会继续执行用例 |
|
--rootdir=ROOTDIR |
tests根目录,相对路径 |
|
collection |
--collect-only, --co |
收集用例,但不执行 |
--pyargs |
把所有参数解释为python包 |
|
--ignore=path |
忽略测试目录,使用英文逗号分割 |
|
--ignore-glob=path |
path匹配多个不需要收集的测试目录,使用英文逗号分割 |
|
--deselect=nodeid_prefix |
通过node id prefix反选。可以多个,使用英文逗号分隔 |
|
--confcutdir=dir |
只加载相对于dir目录的conftest.py文件 |
|
--noconftest |
不加载conftest.py文件 |
|
--keep-duplicates |
收集重复的test文件,默认只会收集1item,加参数后会收集2items |
|
--collect-in-virtualenv |
收集本地虚拟环境目录的tests |
|
--import-mode={prepend,append,importlib} |
包导入模式,一般用不到,参考:https://www.osgeo.cn/pytest/pythonpath.html?highlight=import%20mode
|
|
--doctest-modules |
文档测试,没啥用 |
|
--doctest-report={none,cdiff,ndiff,udiff,only_first_failure} |
一样,也没啥用 |
|
--doctest-glob=pat |
还是没啥用 |
|
--doctest-ignore-import-errors |
文档测试时忽略导包错误,继续没什么用 |
|
--doctest-continue-on-failure |
文档测试时出现失败继续测试,依然没什么用 |
|
test session debugging and configuration |
--basetemp=dir |
test run的base临时目录(如果存在会先删除) |
-V, --version |
输出pytest版本 |
|
-h, --help |
打印pytest帮助信息 |
|
-p name |
加载插件,一般不会控制此参数 |
|
--trace-config |
查看本地安装好的第三方插件 |
|
--debug |
保存debug信息到'pytestdebug.log'文件 |
|
-o OVERRIDE_INI, --override-ini=OVERRIDE_INI |
覆盖ini文件配置 |
|
--assert=MODE |
断言模式,默认rewrite |
|
--setup-only |
只加载fixture,不执行测试用例 |
|
--setup-show |
在执行测试用例时,打印fixture步骤 |
|
--setup-plan |
展示哪些用例和fixture将要被执行 |
|
logging |
--log-level=LEVEL |
日志等级,默认 WARNING (具体日志等级参考 logging 模块中的日志等级) |
--log-format=LOG_FORMAT |
日志格式(具体日志格式参考 logging 模块中的日志格式) |
|
--log-date-format=LOG_DATE_FORMA |
日志日期格式(具体日志格式参考 logging 模块中的日志格式) |
|
--log-cli-level=LOG_CLI_LEVEL |
cli日志等级(具体日志等级参考 logging 模块中的日志等级) |
|
--log-cli-format=LOG_CLI_FORMAT |
cli日志格式(具体日志格式参考 logging 模块中的日志格式) |
|
--log-cli-date-format=LOG_CLI_DATE_FORMAT |
cli日志日期格式(具体日志格式参考 logging 模块中的日志格式) |
|
--log-file=LOG_FILE |
日志文件路径 |
|
--log-file-level=LOG_FILE_LEVE |
日志文件中的日志等级 |
|
--log-file-format=LOG_FILE_FORMAT |
日志文件中的日志格式 |
|
--log-file-date-format=LOG_FILE_DATE_FORMAT |
日志文件中的日志时间格式 |
|
--log-auto-indent=LOG_AUTO_INDENT |
自动缩进传递给日志模块的多行消息。接受true | on、false | off或整数 |
|