QA|如何给我们的自动化测试代码增加日志记录?|Loguru
这里我们用的是loguru,logging虽然是自带的,但确实使用起来比较繁琐,loguru在Logging基础上增加了很多个性化功能,使用起来也比较简单,所以就使用loguru
代码如下:
1 # cal_testlog.py 2 3 from loguru import logger 4 from config import BASE_DIR 5 import time 6 7 now_dt = time.strftime("%Y%m%d") 8 logpath = BASE_DIR + r'\log' 9 # logname = r'\\' + now_dt + r'.log' 10 cal_log = r'{}\\{}.log'.format(logpath,now_dt) 11 print(cal_log) 12 trace = logger.add(cal_log, rotation="5MB",encoding='utf-8',enqueue=True,retention="1 days") 13
说明:
上图中,我们使用 trace = logger.add(cal_log, rotation="5MB",encoding='utf-8',enqueue=True,retention="1 days") 来生成log,每5M分割一个,
- enqueue (bool, optional) :要记录的消息在到达接收器之前是否应该首先通过多进程安全队列。当通过多个进程将日志记录到文件中时,这是非常有用的。这还具有使日志调用非阻塞的优点。
- rotation:分隔日志文件,何时关闭当前日志文件并启动一个新文件的条件,;例如,“500 MB”、“0.5 GB”、“1 month 2 weeks”、“10h”、“monthly”、“18:00”、“sunday”、“monday at 18:00”、“06:15”
- retention (str, int, datetime.timedelta or callable, optional) ,可配置旧日志的最长保留时间,例如,“1 week, 3 days”、“2 months”
将其他模块的测试内容写入log方法如下图:
注意:一定要记得导入trace
结果如下图:
关于loguru其他知识可参考这篇文章:
https://blog.csdn.net/software_test010/article/details/121150862
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
感谢查阅,点个赞再走呗,完整源码见:https://github.com/T-Better/SoftTest
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现