pytest测试框架常用功能,pytest自动化测试框架
添加pytest的日志:pytest测试框架自带日志管理开关_ MB 62 af F3 AFB 54 FB的技术博客_博客
前言一般来说,工作中常用的日志保存方式有两种。
pytest测试框架有自己的日志管理开关。(如果开启了pytest测试框架的日志记录功能,当pytest以命令行方式运行测试用例时,日志记录信息也会打印在终端Terminal中。)
【注意】同时满足使用python的日志库打开pytest测试框架的日志功能的要求。终端打印的日志格式和日志级别是我们在日志模块中设置的格式。
log_cli参数为真:
log_cli参数为假:
使用python的日志库。(通常,该方法用于记录用例执行期间的日志)
【注意】单个模块的测试用例单独运行时,会根据日志配置模块中设置的日志格式和级别打印或保存日志内容(例如日志级别为error,则打印到控制台,日志级别为info,则保存到日志文件)。但是,在命令行模式下运行时,
一般来说,在测试用例的执行过程中,日志记录不会实时输出或者保存到日志文件中。看来测试用例的执行结果不够权威。(根据级别将日志分发到不同的终端)
【注意】在项目中的应用:日志设置模块;pytest测试框架log_cli参数为真。(这保证了无论某个模块的测试用例是单独运行还是通过pytest命令行运行,都可以在控制台或终端查看到相应的日志信息)
pytest框架关于日志的命令行参数如下:-no-print-logs禁止打印失败测试的日志。
-LOG-LEVEL=日志模块使用的日志级别
- log-format=LOG_FORMAT日志模块使用的日志格式。
-LOG-DATE-FORMAT=LOG _ DATE _ FORMAT日志模块使用的日志日期格式。
-LOG-CLI-LEVEL=LOG _ CLI _ LEVEL CLI日志记录级别。
- log-cli-format=LOG_CLI_FORMAT日志模块使用的日志格式。
-LOG-CLI-DATE-FORMAT=LOG _ CLI _ DATE _ FORMAT日志模块使用的日志日期格式。
-LOG-FILE=将日志记录写入时文件的日志文件路径。
- log-file-level=LOG_FILE_LEVEL日志文件日志记录级别。
-LOG-FILE-FORMAT=LOG _ FILE _ FORMAT日志模块使用的日志格式。
-log-file-date-format=log _ file _ date _ format日志模块使用的日志日期格式。还有一句台词:
第一个pytest.ini tox . ini setup . CFG file中的[pytest] ini-options发现:具体操作首先,pytest测试框架从pytest . ini中读取log_cli配置,默认关闭,即false。log _ cli参数为true将打开pytest测试框架自己的日志功能,为false将关闭该功能。】
在文件的根目录下新建一个pytest.ini或tox.ini或setup.cfg文件,然后按如下方式写入相关日志:
[pytest]
log _ cli=true#打开日记
log _ level=NOTSET#日志级别
log _ format=%(ASC time)s %(level name)s %(message)s #日志日期
日志日期格式=% y-%m-%d% h:% m:% s #日志时间
Addopts=-vs #由日志执行的命令
Log_file=。/test.log #日志存储位置
Log_file_level=info #日志级别
log _ file _ format=%(ASC time)s %(level name)s %(message)s #与记录时间相同。
log _ file _ date _ format=% y-% m-% d % h:% m:% s可以用pytest -o重写(即覆盖ini文件中与日志相关的命令行参数);该函数仅在pytest版本3.4之后实现,如下所示:
pytest pytest _ lean 2 . py-o log _ CLI=true-o log _ CLI _ level=INFO
期待陌生,拥抱惊喜。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。