基本概念
1. test fixture
指:一個(gè)或多個(gè)測(cè)試用例執(zhí)行所需的前置條件诀浪,和測(cè)試完后的一些銷(xiāo)毀動(dòng)作。包括:setup和teardown
2. test case
單個(gè)測(cè)試用例赋荆,用于驗(yàn)證某一特定輸入的特定輸出
3. test suite
測(cè)試用例集笋妥,多個(gè)測(cè)試用例的組成
4. test runner
用來(lái)執(zhí)行測(cè)試用例
整個(gè)流程如下:
1. class繼承于unittest.TestCase,寫(xiě)好TestCase窄潭,由TestLoader加載TestCase到TestSuite春宣。如果:一個(gè)class中有3個(gè)test_xxx方法酵颁,最后在load到suite中時(shí)也有3個(gè)測(cè)試用例。
2. unittest.main()執(zhí)行月帝,main會(huì)調(diào)用TextTestRunner中的run來(lái)執(zhí)行TestSuite躏惋。(也可自行添加需要執(zhí)行的用例到suite,然后通過(guò)runner來(lái)執(zhí)行)
3. 執(zhí)行結(jié)果輸出到控制臺(tái)嚷辅,或者可以設(shè)置其輸出到文件簿姨。
以Login接口為例(見(jiàn)圖),寫(xiě)3個(gè)測(cè)試用例:
1. 登錄成功
2. 密碼錯(cuò)誤
3. 用戶不存在
如圖簸搞,在setup中聲明接口請(qǐng)求的url扁位,login接口需要的valitoken也在setup中先請(qǐng)求到。
這里validate token和login的接口已經(jīng)一起封裝在global_inter文件中趁俊,但是測(cè)試數(shù)據(jù)是直接寫(xiě)在測(cè)試用例中的域仇。進(jìn)一步的優(yōu)化是把測(cè)試數(shù)據(jù)分離,在一個(gè)單獨(dú)的文件中去管理寺擂。