當(dāng)我們寫了一個單個py的測試文件時直接運(yùn)行就ok了,但當(dāng)我們有很多很多個這樣的py時,難道要一個一個的點(diǎn)擊來運(yùn)行嗎,當(dāng)然不是。我們可以通過discover方法來找到所有的用例。
下面直接舉例說明discover用法:
一、 準(zhǔn)備工作
目錄結(jié)構(gòu):

DiscoverCase.py 文件代碼:
import unittestimport osdef discover_case(case_dir): # 待執(zhí)行用例的目錄 testcase = unittest.TestSuite() discover = unittest.defaultTestLoader.discover(case_dir,pattern="*.py",top_level_dir=None) # discover方法篩選出來的用例,循環(huán)添加到測試套件中 print(discover) for test_suite in discover: for test_case in test_suite: print(test_case) # 添加用例到testcase #testcase.addTests(test_case) testcase.addTests(test_case) return(testcase)path = os.path.join(os.getcwd(), "測試用例")case = discover_case(case_dir=path)print(case)
Test1代碼(test2~4代碼基本相同):

注意:每個testcase里面的執(zhí)行用例(即以test開頭的函數(shù))必現(xiàn)大于或等于兩個,不然會報錯。
二、寫好這些后我們就直接跑程序看結(jié)果
運(yùn)行后用例的文件名、類名、函數(shù)名都會遍歷出來

是不是很簡單啊。
注意:如果用例名稱全為中文是不可以加載的到的,必須以字母開始,比如“i登錄.py”
這樣是可以被加載到的,如果直接寫”登錄.py”這樣是不能被加載到的。
以上這篇對python_discover方法遍歷所有執(zhí)行的用例詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點(diǎn)
疑難解答