问题:
- 在做接口自动化时,参数化的时候发现商品创建成功了,但是控制台报错。提示断言失败。下面我把写个demo来一起看下
log.p文件
from loguru import logger
import time
import os
# 解析配置文件中所写的路径
PATH = lambda a: os.path.abspath(os.path.join(os.path.dirname(__file__), a))
now = time.strftime('%Y-%m-%d %H:%M:%S')
# 从配置文件获取日志路径
# log_path = PATH(get_Path_elements('Log_path')['path'])
log_path = PATH('../Logs/') # 暂时写死,就存这个位置下
# 判断日志文件夹是否存在
if not os.path.exists(log_path):
# 递归创建
os.makedirs(log_path)
def log():
logger.add(sink=os.path.join(log_path, now + ".log"), # 日志记录的位置
level="DEBUG", # 日志记录的等级
retention='7 days', # 日志记录
enqueue=False, # 日志 异步记录
backtrace=False, # 完全的记录描述
diagnose=False)
return logger
test_demo.py文件
import pytest
from log import log
log = log()
@pytest.mark.parametrize('user', ['shichao', 'xiaoming'])
def test_demo_1(user):
log.info(user)
assert 1 == 1
log.info("-----" + user)
# pytest.main(["test_demo_1"])
在pycharm中的执行结果
- 使用debug模式打断点,发现执行完一次后,又执行了一次。那么日志会什么会在每次执行都重复写一次呢?
- 我开始以为是log封装的有问题又换成了logging这个模块写日志发现还是一样的。。。哎
- 然后我就想换到命令行执行一次试试
- 怀疑是pycharm的环境问题?有没有懂得大佬指教一哈