Python TestSuite生成測試報告過程解析
阿新 • • 發佈:2020-07-24
簡介:為每一個測試用例新增說明,那麼將會使報告更加易讀懂,工作中彙報資料的技巧
u"test_one方法"
HTMLTestRunner 是 Python 標準庫的 unittest 模組的一個擴充套件,它可以生成 HTML的 測試報告,無法通過pip安裝。
首先要下 HTMLTestRunner.py 檔案,將下載的檔案放入…\python\Lib目錄下 (或者同個路徑)
注意點:
python2和python3,語法不一樣,導致HTMLTestRunner在python3不相容
解決辦法:匯入課程資料裡面修改好的HTMLTestRunner.py (該版本是網上的小夥伴修改好的)
# -*- coding: UTF-8 -*- import unittest import HTMLTestRunner import time class XdclassTestCase(unittest.TestCase): def setUp(self): self.age = 32 self.name = "小D課堂" print(" setUp method=======") def tearDown(self): print(" tearDown method=======") #斷言是否相同 self.assertEqual('foo'.upper(),'FOO') def test_one(self): u"test_one方法" print(" test_one 二當家小D 來了") #斷言是否相同 self.assertEqual(self.name,"小D課堂",msg="名字不對") def test_two(self): u"test_TWO方法說明" print(" test_two 前端 來了") #斷言是否為 true,msg是斷言錯誤的提示資訊 self.assertTrue('XD'.isupper(),msg="不是大寫") def test_three(self): u"這是首頁登入測試用例" print(" test_three 後端 來了") self.assertEqual(self.age,32) def test_four(self): print(" test_four 小D課堂官網上線啦 https://www.xdclass.net") self.assertEqual(self.age,32) if __name__ == '__main__': suite = unittest.TestSuite() suite.addTest(XdclassTestCase("test_two")) suite.addTest(XdclassTestCase("test_one")) suite.addTest(XdclassTestCase("test_three")) suite.addTest(XdclassTestCase("test_four")) #verbosity引數可以控制執行結果的輸出,0 是簡單報告、1 是一般報告(預設)、2 是詳細報告 #runner = unittest.TextTestRunner(verbosity=2) #runner.run(suite) #檔名中加了當前時間,為了每次生成不同的測試報告 file_prefix = time.strftime("%Y-%m-%d %H_%M_%S",time.localtime()) print(file_prefix) #建立測試報告,此時這個檔案還是空檔案 # wb 以二進位制格式開啟一個檔案,只用於寫入,如果檔案存在則覆蓋,不存在則建立 fp = open("./"+file_prefix+"_result.html","wb") # stream定義一個測試報告寫入的檔案,title就是標題,description就是描述 runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title=u"小D課堂 測試報告",description=u"測試用例執行情況") runner.run(suite) fp.close()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。