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或整数 | |