1. 程式人生 > >unittest框架-測試用例管理

unittest框架-測試用例管理

新增用例管理

前面是針對單個add方法來進行單元測試,如果需要對多個方法來進行測試,該如何處理?如新增一個Sub方法來進行單元測試驗證。(藍色是新增的sub方法)

我們需要同時對add和sub方法進行單元測試。那麼我們需要針對新的sub方法,新增一個class作為TestCase。

測試結果如下:

用例公共部分合並

在這個示例中,每個測試類都有SetUp()和tearDown()方法,而且兩個方法內容都是一樣的,用於列印開始和結束提示語句,是否可以合併在一起呢?

單獨定義一個父類Test_StarEnd()放置SetUp()和tearDown()方法。Test_StarEnd()繼承unnitest.TestCase。再定義測試add和sub方法的類,繼承父類Test_StarEnd()。因為父類Test_StarEnd()繼承了unnitest,因此子類Test_add()和Test_sub也可以用unittest中的斷言方法。

最後執行測試用例的時候,也更為簡潔了:

用例執行順序

執行順序規則:根據測試類或測試方法的數字與字母順序0-9, A-Z執行的

那麼如何按照自定義的順序執行呢?

可以用如下方式控制:


測試用例綜合框架管理

前面測試用例與執行都是寫在一個檔案,當測試用例不斷增加的時候,用例的執行和管理變得非常麻煩。因此需要對用例根據具體的功能模組來管理。

案例:

Test_Project 檔案目錄下包含4個python檔案:

  • I--StartEnd.py     SetUp和TearDown管理
  • I--calculatory.py   加減法運算方法的實現
  • I--test_add.py   加法測試用例
  • I--test_sub.py   減法測試用例
  • I--runtest.py   用例執行管理

calculatory.py   加減法運算方法的實現


StartEnd.py     SetUp和TearDown管理


test_add.py   加法測試用例


test_sub.py   減法測試用例


runtest.py   用例執行管理