-----使用技术手段解决问题,坚信注重每一个细节,把熟悉的做到一种极致,一定会有创新出现。-----

解决多个py模块调用同一个python的logging模块,打印日志冲突问题

  前期对python中的logging模块进行了封装,这样自动化测试框架中的多个测试脚本(py)就可以使用同一个封装后的日志系统,这样各脚本中只需要引用一下即可,方面快捷。那么当我使用unittest框架执行unittest.main()运行所有自动化case时,就会打印多个重复的日志。

  如下图:

 

经分析主要是由于logging封装脚本中,logger参数重复导致的

def __init__(self , logger):

网上也看了其他人的解决办法,在脚本中增加removehandler,但是怎么都不生效,谁能告诉我。

我想到的方法是在————init————下面对logger参数进行赋值,我的最终目的是能够更好的打印日志,logger到底是什么字符,只要不重复就行。

增加下面随机数(一定要降低logger的重复几率才行):

1         num = ""
2         i = 0
3         while i < 10:
4             num_str = random.choice("abcdefghi_jklmnopqishuvwxyz")
5             num += str(num_str)
6             i = i+1
7             logger = num

运行测试案例:

 

posted @ 2018-01-20 15:35  ZhuQue  阅读(4831)  评论(2编辑  收藏  举报
多年性能测试、测试管理经验,专注银行、支付、电商行业,倾向于性能、安全、 监控、调优、模型、管理等方向的研究。
使用技术手段解决问题,坚信注重每一个细节,把熟悉的做到一种极致,一定会有创新出现。