小編的主機:machtml
1、引入HTMLTestRunner包python
一、下載HTMLTestRunner.py,已上傳到網盤,點擊下載chrome
二、將HTMLTestRunner.py複製到python安裝目錄的Lib文件夾下。函數
可能有的人不知道python安裝地址的Lib文件夾在哪裏。小編用的是mac,放的地址爲:/資源庫/Frameworks/Python.framework/Versions/3.6/lib/python3.6 post
由於看見裏面有不少.py結尾的文件,經常使用到的os.py都在裏面,放這裏準沒錯。單元測試
2、用unittest寫測試用例測試
具體可參考https://docs.python.org/2/library/unittest.htmlui
3、main方法中生成測試報告url
import unittest import HTMLTestRunnerNew import time import os class make(unittest.TestCase): def __init__(self, methodName='runTest'): super().__init__(methodName) print("構造函數") def test_aaa(self): print("aaa") self.assertEqual(1, 2) def test_bbb(self): print("bbb") self.assertEqual(2, 2) def test_ccc(self): print("ccc") self.assertEqual(3, 2) if __name__ == '__main__': print("main-start") s = unittest.TestSuite() # 實例化 s.addTests(unittest.TestLoader().loadTestsFromTestCase(make)) # 加載用例 now = time.strftime('%Y-%m-%d %H%M%S') print("main-getcwd") filename = open(os.getcwd() + '/testResult_report' + now + '.html', 'wb') runner = HTMLTestRunnerNew.HTMLTestRunner( stream=filename, title='單元測試報告', description='單元測試報告', tester='youreyebows') runner.run(s) print("main-stop")
4、執行main方法spa
注意執行時必定不要右鍵 Run "Unittests in xxx" 由於這個執行的是上面寫的繼承自unittest的類,例如我這裏就是make。
能夠試試哦,控制檯不會打印出main方法裏的print後的語句。
執行方法見另外一篇博客:Python 同一文件中,有unittest不執行「if __name__ == '__main__」,不生成HTMLTestRunner測試報告的解決方案
5、查看html報告
(1)在項目下能夠看見生成的測試報告,後綴爲.html
(2)在chrome打開如圖: