如果想要在run测试用例时,打印出由python的logging的日志,可以在pytest中进行相应的配置
pytest可以将日志输出到控制台或者文件中,分别对应不同的配置项

pytest的日志配置文件主要在pytest.ini文件中进行配置,包括配置日志的格式,时间格式等

控制台打印日志

在pytest.ini文件中配置:

log_cli = true
log_cli_level=DEBUG
log_cli_format= %(asctime)s %(levelname)s %(message)s
log_cli_date_format = %Y-%m-%d %H:%M:%S

log_cli:表示开启控制台日志,默认是关闭的
log_cli_level:日志等级
log_cli_forma:日志格式
log_cli_date_format:日志的时间格式

源码
import pytest
import logging

LOG=logging.getLogger(__name__)


def inc(x):
    LOG.info("start to test.....")
    return x+1


def test_inc():
    LOG.info("start to test one...")
    assert inc(5)==6

def test_inc2():
    assert inc(3)==7

运行pytest后控制台日志
在这里插入图片描述

打印日志到文件

在pytest.ini中配置如下

log_file=../log/log.txt
log_file_level=DEBUG
log_file_format= %(asctime)s %(levelname)s %(message)s
log_file_date_format = %Y-%m-%d %H:%M:%S

运行pytest就会生成一个log文件夹以及一个log.txt文件
log内容与控制台输出一样,只不过是输出到了文件log.txt中

log.txt:

2022-12-29 11:11:17 INFO start to test one...
2022-12-29 11:11:17 INFO start to test.....
2022-12-29 11:11:17 INFO start to test.....
2022-12-29 11:11:17 INFO start to test.....
2022-12-29 11:11:17 INFO start to test.....
2022-12-29 11:11:17 INFO start to test.....
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐