Python unittest.TestLoader()類的幾種尋找testcase的方法的使用

unittest.TestLoader()提供了創(chuàng)建test suite的幾種方法:
TestLoader().loadTestsFromTestCase(testCaseClass)
TestLoader().loadTestsFromModule(module, pattern=None)
TestLoader().loadTestsFromName(name, module=None)
TestLoader().loadTestsFromNames(name, module=None)
TestLoader().discover
下面一一列舉其用法,并會感嘆unittest的精妙之處古沥。

  • loadTestsFromTestCase(testCaseClass)
    testCaseClass必須是TestCase的子類(或?qū)O類也行)
  • loadTestsFromModule(module, pattern=None)
    test case所在的module
  • loadTestsFromName(name, module=None)
    name是一個string诫舅,string需要是是這種格式的“module.class.method”
  • loadTestsFromNames(name, module=None)
    names是一個list攒巍,用法與上同
  • discover(start_dir, pattern=’test*.py’, top_level_dir=None)
    從python文件中獲取test cases

以上舉例如下:
含有test cases的文件:for_all.py

class DefaultTestCase(unittest.TestCase):

    def setUp(self):
        print "Start to run"

    def tearDown(self):
        print "Close"


class CasesALL(DefaultTestCase):

    def ab_test_print_b(self):
        print 'b',
        print time.time()
        time.sleep(2)

用來執(zhí)行測試用例的文件:run.py

import unittest
from unittest import TestLoader
import for_all
from for_all import CasesALL


if __name__ == '__main__':
    suite = unittest.TestSuite()
    loader = TestLoader()
    loader.testMethodPrefix = 'ab'
    # loader.sortTestMethodsUsing = None
    # test_cases_name = loader.getTestCaseNames(CasesALL)
    test_cases1 = unittest.TestLoader().loadTestsFromTestCase(CasesALL)
    test_cases2 = unittest.TestLoader().loadTestsFromModule(for_all)
    test_cases3 = unittest.TestLoader().loadTestsFromName('for_all.CasesALL.ab_test_print_b')
    suite.addTests(test_cases1)
    suite.addTests(test_cases2)
    suite.addTests(test_cases3)
    runner = unittest.TextTestRunner(verbosity=2)
    runner.run(suite)

調(diào)試時發(fā)現(xiàn)建峭,其實三種方法得到的test suite的格式都不一樣,但是runner.run()執(zhí)行的結(jié)果是一樣的调塌,這也是我覺得驚喜的原因跃闹。

unittest.TextTestRunner(verbosity=2).run(tests)
這里的verbosity是一個選項,表示測試結(jié)果的信息復(fù)雜度,有三個值
0 (靜默模式): 你只能獲得總的測試用例數(shù)和總的結(jié)果 比如 總共100個 失敗20 成功80

1 (默認模式): 非常類似靜默模式 只是在每個成功的用例前面有個“.” 每個失敗的用例前面有個 “F”

2 (詳細模式):測試結(jié)果會顯示每個測試用例的所有相關(guān)的信息
并且 你在命令行里加入不同的參數(shù)可以起到一樣的效果

加入 --quiet 參數(shù) 等效于 verbosity=0
加入--verbose參數(shù)等效于 verbosity=2
什么都不加就是 verbosity=1</pre>

參考:
https://docs.python.org/3/library/unittest.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末磷雇,一起剝皮案震驚了整個濱河市偿警,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌唯笙,老刑警劉巖螟蒸,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異崩掘,居然都是意外死亡七嫌,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門苞慢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來诵原,“玉大人,你說我怎么就攤上這事∑ぜ伲” “怎么了鞋拟?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長惹资。 經(jīng)常有香客問我贺纲,道長,這世上最難降的妖魔是什么褪测? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任猴誊,我火速辦了婚禮,結(jié)果婚禮上侮措,老公的妹妹穿的比我還像新娘懈叹。我一直安慰自己,他們只是感情好分扎,可當(dāng)我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布澄成。 她就那樣靜靜地躺著,像睡著了一般畏吓。 火紅的嫁衣襯著肌膚如雪墨状。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天菲饼,我揣著相機與錄音肾砂,去河邊找鬼。 笑死宏悦,一個胖子當(dāng)著我的面吹牛镐确,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播饼煞,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼源葫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了砖瞧?” 一聲冷哼從身側(cè)響起息堂,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎芭届,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體感耙,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡褂乍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了即硼。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片逃片。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出褥实,到底是詐尸還是另有隱情呀狼,我是刑警寧澤,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布损离,位于F島的核電站哥艇,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏僻澎。R本人自食惡果不足惜貌踏,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望窟勃。 院中可真熱鬧祖乳,春花似錦、人聲如沸秉氧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽汁咏。三九已至亚斋,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間梆暖,已是汗流浹背伞访。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留轰驳,地道東北人厚掷。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像级解,于是被迫代替她去往敵國和親冒黑。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容