HtmlTestRunner是unittest模塊下的一個拓展,用來生成測試報告。原生的可以自己找下下載地址,原生的看着比較丑。這次使用的是經過一些大佬優化之后的。具體GitHub地址:https://github.com/findyou/HTMLTestRunnerCN/tree/dev
下載后打開文件應該是這樣的
HTMLTestRunnerCN.py是中文版本的,EN是英文版本的,將要使用的版本放到Python安裝目錄下lib文件夾中,然后試試看能不能import,能import就表示OK了
最下面兩個test開頭的是個樣例,可以運行下看下效果如何
使用方法:將原來unittest模塊中unittest.TextTestRunner()修改為HTMLTestRunnerCN.HTMLTestRunnerCN()
runner = HTMLTestRunnerCN.HTMLTestReportCN( stream=fp, title='xx項目測試報告', description='詳細測試用例結果', tester='測試人員姓名' ) runner.run(suite) fp.close()
生成的報告效果如下
stream:是測試報告存放的地方和報告的名字
title:是報告中顯示最上方的標題
description:是展示在報告中的文字描述
tester:是報告中的測試人員
一定要close(),不然報告會是空的
每個類下會展示對應的測試函數
可以把類和測試函數的第一行注釋成功能描述,這樣報告也會展示出來
try:
#斷言
except BaseException as f:
raise
通過unittest自帶的斷言,斷言不通過會在失敗中展示,但是如果寫在try...except,一定要raise!因為不把異常raise出來,異常就被處理了,失敗那里是不會記錄的。所以一定要raise出來!
另外unittest斷言正確是沒有返回值的,也就是說返回的是None,不是True。