在使用pytest进行自动化测试时,需要将实时日志打印出来,而不是跑完后才在报告中出结果。
不过,好在pytest在3.3版本开始,就支持这一功能了,而不用再像nose一样,再去装第三方插件。
网上也有相关实时的日志输入说明,但我尝试后,不是我想要的,比如:pytest输出Log
所以,有两种方法解决

1.在当前文件夹下写pytest.initox.inisetup.cfg文件,然后将日志相关写在里面,如下:

1
2
3
4
5
[pytest]
log_cli = 1
log_cli_level = INFO
log_cli_format = %(asctime)s [%(levelname)8s] %(message)s (%(filename)s:%(lineno)s)
log_cli_date_format=%Y-%m-%d %H:%M:%S

这时就可以正常打印日志出来。

2.直接用pytest -o方式重写,这个功能在pytest 3.4之后才实现,如下

pytest pytest_lean2.py -o log_cli=true -o log_cli_level=INFO