首页 > 其他分享 >QA|如何给我们的自动化测试代码增加日志记录?|Loguru

QA|如何给我们的自动化测试代码增加日志记录?|Loguru

时间:2023-06-15 14:25:55浏览次数:39  
标签:log loguru Loguru QA cal 测试代码 日志 logger retention

这里我们用的是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

 

标签:log,loguru,Loguru,QA,cal,测试代码,日志,logger,retention
From: https://www.cnblogs.com/T-Better/p/17482728.html

相关文章

  • QA|Pycharm:allure : 无法将“allure”项识别为 cmdlet、函数、脚本文件或可运行程序的
    Pycharm中生成allure测试报告时报错如图: 单独执行allure--version也不行,cmd这样执行也报同样的错 网上查了说是环境变量问题,加一下cmd可以了,重启pycharm也可以了    参考文章:(118条消息)pycharmallure:无法将“allure”项识别为cmdlet、函数、脚本文件......
  • Qt打包程序移动到新环境时提示QAxBase::setControl: requested control Excel.Applica
    在新环境中运行程序时发现程序异常结束,查看日志内如如下,异常原因应该是我是程序中对Excel表格操作产生的。Warning:File:()Line:(0)QAxBase::setControl:requestedcontrolExcel.Applicationcouldnotbeinstantiated(2023-06-1217:40:58)Warning:File:()Line:(0)QAx......
  • m基于FPGA的16QAM调制解调通信系统verilog实现,包含testbench,不包含载波同步
    1.算法仿真效果本系统进行了两个平台的开发,分别是: Vivado2019.2 Quartusii18.0+ModelSim-Altera6.6d StarterEdition 其中Vivado2019.2仿真结果如下:  Quartusii18.0+ModelSim-Altera6.6d StarterEdition的测试结果如下: 2.算法涉及理论知识概要   ......
  • 611随笔QAQ
    1.古诗词里的中国十大名花  何须浅碧深红色,自是花中第一流。---------------------------桂花  只道花无十日红,此花无日不春风。----------------------------月季  遥知不是雪,为有暗香来。----------------------------------------梅花  孤兰生幽园,众草共无......
  • QA|如何实现一个函数读取1-9按钮?|网页计算器自动化测试实战
    如何实现一个函数读取1-9按钮?如何实现一个根据我们Json存的数字,自动选取对应按钮点击,并且点击对应算法?首先我们肯定不能给每个元素都写一个函数吧,毕竟挺多,而且如果这样写了,那加减乘除都要分开测试,代码太冗余,此时我们发现数字按钮的定位ID都很类似,如下   于是我们可以写成......
  • QA|重写了元素定位后报错xx object has no attribute 'find_element'|网页计算器自动
    代码如下:1#basepage.py23fromseleniumimportwebdriver456classBasePage():7"""8基类用作初始化封装常用操作9"""1011def__init__(self):12"""13初始化driver14......
  • QA
    1.驱动程序入口函数的_init _exit起什么作用点击查看代码int__inits3c2410fb_init(void){ returnret;}staticvoid__exits3c2410fb_cleanup(void){}2.分配显存时也可以用vmalloc函数?答:不可以,显存要要保证物理地址连续,vmalloc函数分配的内存可以保证虚拟地......
  • QA|定义的basepage在被a、b继承后,先后对a、b实例化调用后,存在b实例找不到driver问题|U
      iops登录后,需要对登录后的iops主页操作:点击对应按钮,如下 此时我需要调试一下iops_home_page.py中的代码,但需要先登录才调试这块代码,代码如下:运行:结果起来两个浏览器,没有点击进去 或者有时会报错:找不到ih的属性:self.driver()原因:因上面iops_homepage没有继承上lo......
  • go map gc的测试代码
    **本文章由githubcopilot协助生成**遇到一个离职同事写的代码,如下:```gopackagemapGCfuncmapGc(){lock:=sync.Mutex{}gofunc(){for{time.Sleep(12*time.Hour)tmp:=make(map[string]interface{})lo......
  • QA|外部调用类方法总报错missing 1 required positional argument:'self'|UI自动化
    外部调用类方法总报错missing1requiredpositionalargument:'self' 原因:实例化这个类实例化错了,少了括号()解决:改成如下就可以了 参考学习:调用类方法时报错:missing1requiredpositionalargument:'self'-hehehe_wy7-博客园(cnblogs.com) ......