上節課,我們開始使用unittest整合測試用例,但是一個項目中,測試用例會有很多,當有很多的測試文件py腳本時,需要一個測試用例集來統一運行,這裏就需要使用unittest中的批量運行來跑腳本。
一、常用方法詳解
創建一個測試用例套件
unittest.TestSuite(Iterable_testType)
- Iterable_testType:可迭代的測試用例集合
運行測試用例集
unittest.TextTestRunner().run(suite)
- suite:所創建的測試用例集
尋找文件夾中所有測試用例
unittest.defaultTestLoader.discover(start_dir,pattern,top_level_dir)
- start_dir:文件夾目錄,例:D:\\workspace
- pattern:匹配條件,通過字符串模糊匹配 例:test*.py
- top_level_dir=None:頂層目錄,默認爲None
添加一組測試用例
unittest.TestSuite().addTests(test_cases)
- test_cases:包含一組測試用例的列表,例:[Demo("test_01"), 類名("方法名")]
二、批量運行用例腳本示範
綜上方法所述,實際我們運行的話,可以單獨寫一個類負責控制運行,具體寫法也很簡單,如下
import unittest
# 通過文件夾獲取所有符合條件的用例
dis = unittest.defaultTestLoader.discover("D:\1git\cenpur_uitest\test_case", "demo3.py")
# 創建一個測試用例套件,並放入測試用例集
suite = unittest.TestSuite(dis)
# 運行所創建的測試套件
unittest.TextTestRunner().run(suite)