前期對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
運行測試案例: