基本概念
1. test fixture
指:一個或多個測試用例執行所需的前置條件,和測試完后的一些銷毀動作。包括:setup和teardown
2. test case
單個測試用例,用于驗證某一特定輸入的特定輸出
3. test suite
測試用例集,多個測試用例的組成
4. test runner
用來執行測試用例
整個流程如下:
1. class繼承于unittest.TestCase,寫好TestCase,由TestLoader加載TestCase到TestSuite。如果:一個class中有3個test_xxx方法,最后在load到suite中時也有3個測試用例。
2. unittest.main()執行,main會調用TextTestRunner中的run來執行TestSuite。(也可自行添加需要執行的用例到suite,然后通過runner來執行)
3. 執行結果輸出到控制臺,或者可以設置其輸出到文件。
以Login接口為例(見圖),寫3個測試用例:
1. 登錄成功
2. 密碼錯誤
3. 用戶不存在
如圖,在setup中聲明接口請求的url,login接口需要的valitoken也在setup中先請求到。
這里validate token和login的接口已經一起封裝在global_inter文件中,但是測試數據是直接寫在測試用例中的。進一步的優化是把測試數據分離,在一個單獨的文件中去管理。