unittest系列(一)unittest簡介和示例

北漂的雷子發表於2021-03-13

 unittest — 單元測試框架

        單元測試框架是受到 JUnit 的啟發,與其他語言中的主流單元測試框架有著相似的風格。其支援測試自動化,配置共享和關機程式碼測試。支援將測試樣例聚合到測試集中,並將測試與報告框架獨立。

 

 

    它主要包含以下幾個方面:

測試腳手架

test fixture 表示為了開展一項或多項測試所需要進行的準備工作,以及所有相關的清理操作。舉個例子,這可能包含建立臨時或代理的資料庫、目錄,再或者啟動一個伺服器程式。

測試用例

一個測試用例是一個獨立的測試單元。它檢查輸入特定的資料時的響應。 unittest 提供一個基類: TestCase ,用於新建測試用例。

測試套件

test suite 是一系列的測試用例,或測試套件,或兩者皆有。它用於歸檔需要一起執行的測試。

測試執行器(test runner)

test runner 是一個用於執行和輸出測試結果的元件。這個執行器可能使用圖形介面、文字介面,或返回一個特定的值表示執行測試的結果。

 

    

二、unitest的工作原理

通過unittest類呼叫分析,可將框架的工作流程概況如下:

編寫TestCase,由TestLoader載入TestCase到TestSuite,然後由TextTestRunner來執行TestSuite, 最後將執行的結果儲存在TextTestResult中。

圖片

    

 

 

 

三、用途

       unittest作用:單元測試、介面測試、UI測試。用來組織測試用例。

    

四、一個簡單的小例子

import  unittest #模組匯入
class TestDemo(unittest.TestCase):#繼承TestCase類 
   def setUp(self):        
        pass   
   def tearDown(self):        
        pass    
    def testone(self):  
      #測試用例,斷言1和1是否相等       
     self.assertEqual(1,1)
if __name__=="__main__":    
    unittest.main()            

 

    執行結果

 

 

    


 

相關文章