日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

HTMLTestRunner加入logging输出

發(fā)布時(shí)間:2025/3/21 HTML 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTMLTestRunner加入logging输出 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

使用HTMLTestRunner生成html的測(cè)試報(bào)告的時(shí)候,報(bào)告中只有console輸出,logging的輸出無(wú)法保存,

如果要在報(bào)告中加入每一個(gè)測(cè)試用例執(zhí)行的logging信息,則需要改HTMLTestRunner的源碼

?

HTMLTestRunner原作者文件下載地址:http://tungwaiyip.info/software/HTMLTestRunner.html

這里使用findyou的美化版來(lái)做實(shí)驗(yàn),github地址https://github.com/findyou/HTMLTestRunnerCN/tree/dev

?

在HTMLTestReportCN.py 474行加入一個(gè)logger,可以自己傳入一個(gè)logger,這里固定一個(gè)

class _TestResult(TestResult):# note: _TestResult is a pure representation of results.# It lacks the output and reporting ability compares to unittest._TextTestResult.def __init__(self, verbosity=1):TestResult.__init__(self)self.stdout0 = Noneself.stderr0 = Noneself.success_count = 0self.failure_count = 0self.error_count = 0self.verbosity = verbosity# result is a list of result in 4 tuple# (# result code (0: success; 1: fail; 2: error),# TestCase object,# Test output (byte string),# stack trace,# )self.result = []#增加一個(gè)測(cè)試通過(guò)率 --Findyouself.passrate=float(0)self.logger = logging.getLogger('mylog')

在488行startTest函數(shù)中初始化logging.Handler,記錄到內(nèi)存中

def startTest(self, test):TestResult.startTest(self, test)# just one buffer for both stdout and stderrself.outputBuffer = io.StringIO()stdout_redirector.fp = self.outputBufferstderr_redirector.fp = self.outputBufferself.stdout0 = sys.stdoutself.stderr0 = sys.stderrsys.stdout = stdout_redirectorsys.stderr = stderr_redirector#----add logging output----fengf233self.log_cap = io.StringIO()self.ch = logging.StreamHandler(self.log_cap)self.ch.setLevel(logging.DEBUG)formatter = logging.Formatter('[%(levelname)s][%(asctime)s] [%(filename)s]->[%(funcName)s] line:%(lineno)d ---> %(message)s')self.ch.setFormatter(formatter)self.logger.addHandler(self.ch)

在496行?complete_output函數(shù)的返回值中加入logging存在內(nèi)存中的輸出,用換行符隔開

def complete_output(self):"""Disconnect output redirection and return buffer.Safe to call multiple times."""if self.stdout0:sys.stdout = self.stdout0sys.stderr = self.stderr0self.stdout0 = Noneself.stderr0 = None#add log out put ---fengf233return self.outputBuffer.getvalue()+'\n'+self.log_cap.getvalue()

每個(gè)用例執(zhí)行完后,最好清除handler,在504行stopTest函數(shù)中加入

def stopTest(self, test):# Usually one of addSuccess, addError or addFailure would have been called.# But there are some path in unittest that would bypass this.# We must disconnect stdout in stopTest(), which is guaranteed to be called.a = self.complete_output()#清除log的handle---fengf233 self.logger.removeHandler(self.ch)return a

使用這個(gè)方法也不用去改html的代碼,集成在每個(gè)用例的a中返回,效果如下

每個(gè)用例都是單獨(dú)logging記錄,不會(huì)重復(fù)

HTMLTestReportCN.py 中輸出是居中,覺得不好看,可以在414行中更改標(biāo)簽,增加style="text-align:left"屬性

<div id='div_%(tid)s' class="collapse in" style="text-align:left"><pre>%(script)s</pre></div>

別忘了在最前面import logging

最后只需要在你需要logging輸出的文件位置加上logging就可以了,但是需要注意,這里我是使用mylog名稱的logger,你創(chuàng)建的logger需要同名

所以這里HTMLTestRunner還有增加傳入logger的提升空間,這里不做增加了

logger = logging.getLogger(logger=‘mylog’)

?

轉(zhuǎn)載于:https://www.cnblogs.com/fengf233/p/10871055.html

總結(jié)

以上是生活随笔為你收集整理的HTMLTestRunner加入logging输出的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 午夜精品福利一区二区 | 日韩精品免费一区二区在线观看 | 天堂色av | 69av视频在线 | 日本黄色片在线播放 | 男生和女生操操 | 三级av | 性高跟鞋xxxxhd国产电影 | 日韩在线视频中文字幕 | av在线小说 | 一本久道综合色婷婷五月 | 色婷婷网 | 一区二区三区观看 | 国产美女一级视频 | 成年人免费网站 | 探花av在线| 日韩欧美一区二区三区免费观看 | 国产免费无码XXXXX视频 | 亚洲天堂少妇 | 黄色美女免费网站 | 亚洲午夜色 | 有码中文字幕 | 精品久久久久久久久久久 | 久草精品在线观看 | 亚洲日本视频 | 国产精品一级片在线观看 | 在线观看免费中文字幕 | 在线看片网址 | 艳妇臀荡乳欲伦交换在线播放 | 国产一级黄色av | 亚洲精品字幕 | 男人的天堂网av | 日本欧美国产一区二区三区 | 亚洲欧洲日韩综合 | 4438色| 日本不卡一区二区三区在线观看 | 久久99久久99精品中文字幕 | 国产精品毛片一区二区在线看舒淇 | 一区二区三区中文字幕在线观看 | 天堂中文字幕在线 | 黄色av网站在线 | 久久久久久久久久久久电影 | 好吊妞这里只有精品 | 免费看麻豆 | 无码国产精品一区二区免费16 | 国产精品一区在线观看 | 日本黄色一区二区三区 | 亚洲1页| 北条麻妃av在线 | 欧美日韩一区二区视频在线观看 | 日韩av网站在线播放 | 91黄色片 | 亚洲性xx | 三点尽露的大尺度国产 | 亚洲一区二区三区在线免费观看 | 中文字幕无码人妻少妇免费 | 怡红院一区 | 中文字幕在线成人 | 欧美一本| 99国产精品一区二区 | 欧美精品一区二区三 | 成人免费毛片网 | jizz成熟丰满老女人 | 国产高清免费在线 | 久久不卡 | 农村少妇无套内谢粗又长 | 色哟哟网站在线观看 | 久久麻豆精品 | 99re免费视频精品全部 | 丰满秘书被猛烈进入高清播放在 | 天天操天天操天天操天天 | 国产日产欧美一区二区 | 亚洲美女在线观看 | 在线成人免费电影 | 国产网友自拍视频 | 国产成人手机视频 | 国产亚洲欧美在线 | 97影院| 成人在线网 | 中文字幕在线看高清电影 | 男人天堂网在线观看 | 美女草逼视频 | 91国偷自产中文字幕久久 | 躁躁躁日日躁 | 精品少妇一区二区 | 污污视频在线观看免费 | 亚洲一区美女 | 欧美一区| 亚洲视频一区二区 | 成人免费a级片 | 免费毛片软件 | 男人免费网站 | 欧美无遮挡高潮床戏 | 狠狠爱免费视频 | 欧美一区二区福利视频 | 精品国产伦一区 | 自拍偷拍欧美日韩 | 夜夜添无码一区二区三区 | 亚洲不卡在线播放 |