您好,登錄后才能下訂單哦!
當(dāng)我們寫了一個(gè)單個(gè)py的測(cè)試文件時(shí)直接運(yùn)行就ok了,但當(dāng)我們有很多很多個(gè)這樣的py時(shí),難道要一個(gè)一個(gè)的點(diǎn)擊來(lái)運(yùn)行嗎,當(dāng)然不是。我們可以通過(guò)discover方法來(lái)找到所有的用例。
下面直接舉例說(shuō)明discover用法:
一、 準(zhǔn)備工作
目錄結(jié)構(gòu):
DiscoverCase.py 文件代碼:
import unittest import os def discover_case(case_dir): # 待執(zhí)行用例的目錄 testcase = unittest.TestSuite() discover = unittest.defaultTestLoader.discover(case_dir,pattern="*.py",top_level_dir=None) # discover方法篩選出來(lái)的用例,循環(huán)添加到測(cè)試套件中 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(), "測(cè)試用例") case = discover_case(case_dir=path) print(case)
Test1代碼(test2~4代碼基本相同):
注意:每個(gè)testcase里面的執(zhí)行用例(即以test開頭的函數(shù))必現(xiàn)大于或等于兩個(gè),不然會(huì)報(bào)錯(cuò)。
二、寫好這些后我們就直接跑程序看結(jié)果
運(yùn)行后用例的文件名、類名、函數(shù)名都會(huì)遍歷出來(lái)
是不是很簡(jiǎn)單啊。
注意:如果用例名稱全為中文是不可以加載的到的,必須以字母開始,比如“i登錄.py”
這樣是可以被加載到的,如果直接寫”登錄.py”這樣是不能被加載到的。
以上這篇對(duì)python_discover方法遍歷所有執(zhí)行的用例詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。