addopts 参数说明:
-s:输出调试信息,包括print打印的信息。
-v:显示更详细的信息。
-q:显示简略的结果 与-v相反
-p no:warnings 过滤警告
-n=num:启用多线程或分布式运行测试用例。需要安装 pytest-xdist 插件模块。
-k=value:用例的nodeid包含value值则用例被执行。
-m=标签名:执行被 @pytest.mark.标签名 标记的用例。
-x:只要有一个用例执行失败就停止当前线程的测试执行。
--maxfail=num:与-x功能一样,只是用例失败次数可自定义。
--reruns=num:失败用例重跑num次。需要安装 pytest-rerunfailures 插件模块。
-l: 展示运行过程中的全局变量和局部变量
--collect-only: 罗列出所有当前目录下所有的测试模块,测试类及测试函数
--ff: 如果上次测试用例出现失败的用例,当使用--ff后,失败的测试用例会首先执行,剩余的用例也会再次执行一次 *基于生成了.pytest_cache文件
--lf: 当一个或多个用例失败后,定位到最后一个失败的用例重新运行,后续用例会停止运行。*基于生成了.pytest_cache文件
--html=report.html: 在当前目录生成名为report.html的测试报告 需要安装 pytest-html 插件模块。
pytest.ini 文件配置:
[pytest]
;指定运行测试所需的最小pytest版本
minversion = 6.0
;命令参数
addopts = -vs --html=report.html
;必须存在这些插件才能运行,插件可以直接在其名称后面带有或不带有版本 >=2.0,<2.2 (大于等于2.0 小于2.2)
required_plugins= pytest-xdist>=2.0,<2.2 pytest-ordering>=0.6
;执行用例路径目录 多个时空格隔开
testpaths = api_case web_case
;只执行test*的py文件,多个时空格隔开或者多行
python_files = test*.py
;只执行Test*开始的类
python_classes = Test*
;只执行test*开始的函数
python_funtions = test*
;过滤告警信息
filterwarnings =
ignore::UserWarning
;标记记录 多行记录
markers =
;在测试运行期间启用日志显示(也称为“实时日志记录”) 日志基于logging模块
log_cli = True
;设置应为实时日志记录捕获的最低日志消息级别。可以使用整数值或级别名称
log_level = INFO
;设置logging用于格式化实时日志消息的兼容字符串
log_cli_format = %(asctime)s %(levelname)s %(message)s
;设置一个time.strftime()兼容的字符串,在格式化实时日志的日期时将使用该字符串。
log_cli_date_format = %Y-%m-%d %H:%M:%S
;设置应为日志文件捕获的最小日志消息级别。可以使用整数值或级别名称
log_file_level = INFO
;设置一个time.strftime()兼容的字符串,该字符串将在格式化日志捕获的日期时使用。
log_date_format = %Y-%m-%d %H:%M:%S
;设置logging用于格式化捕获的日志消息的兼容字符串
log_format = %(asctime)s %(levelname)s %(message)s
;设置logging用于格式化重定向到日志文件的日志消息的兼容字符串。
log_file_format = %(asctime)s %(levelname)s %(message)s
;设置time.strftime()在格式化日志文件的日期时将使用的兼容字符串。
log_file_date_format = %Y-%m-%d %H:%M:%S
;设置相对于日志消息应该写入的文件的文件名
log_file = logs/pytest-logs.txt
log_auto_indent = False