Python自動化測試學習(四)— 使用discover方法執行多個測試檔案
阿新 • • 發佈:2020-10-21
1、說明
在上一篇部落格中,只是整合到了單個測試檔案中,最終目的是將整合多個測試檔案。例如登入、註冊等模組測試用例放在一起執行,使用discover()方法,找到指定目錄下可匹配的測試檔案,迴圈新增到測試套件中。
2、目錄結構
3、對HtmlReport類,做出如下修改
# coding=utf-8 import unittest,time import HTMLTestRunner class HtmlReport: # 定義測試套件 test_suite = unittest.TestSuite() # 測試的目錄 test_dir = "D:\\Programs\\pythonProject\\src\\testcase" ''' 通過discover方法,從執行的開始目錄到子目錄遞迴查詢‘Test’開頭的所有模組,並返回test_suit test_dir:測試用例所在目錄 pattern='Test*.py':匹配Test開頭的py檔案 top_level_dir:測試模組的頂層目錄,如果沒有頂層目錄,預設為None; ''' discover = unittest.defaultTestLoader.discover(test_dir, pattern='Test*.py', top_level_dir=None) # 將找到的測試用例,迴圈加入測試套件中 for test_case in discover: test_suite.addTests(test_case) # 指定報告存放位置 now_time = time.strftime("%Y%m%d%H%M%S") file_path = "D:\\Programs\\pythonProject\\src\\report\\report_html\\" + now_time + ".html" fs = open(file_path, 'wb') runner = HTMLTestRunner.HTMLTestRunner( stream=fs, title="126郵箱測試報告", description="用例執行情況,如下圖所示:" ) runner.run(test_suite) fs.close()