unittest — 單元測試框架數據庫
單元測試框架是受到 JUnit 的啓發,與其餘語言中的主流單元測試框架有着類似的風格。其支持測試自動化,配置共享和關機代碼測試。支持將測試樣例聚合到測試集中,並將測試與報告框架獨立。服務器
它主要包含如下幾個方面:框架
測試腳手架單元測試
test fixture 表示爲了開展一項或多項測試所須要進行的準備工做,以及全部相關的清理操做。舉個例子,這可能包含建立臨時或代理的數據庫、目錄,再或者啓動一個服務器進程。測試
測試用例ui
一個測試用例是一個獨立的測試單元。它檢查輸入特定的數據時的響應。 unittest 提供一個基類: TestCase ,用於新建測試用例。spa
測試套件代理
test suite 是一系列的測試用例,或測試套件,或二者皆有。它用於歸檔須要一塊兒執行的測試。code
測試運行器(test runner)blog
test runner 是一個用於執行和輸出測試結果的組件。這個運行器可能使用圖形接口、文本接口,或返回一個特定的值表示運行測試的結果。
2、unitest的工做原理
經過unittest類調用分析,可將框架的工做流程概況以下:
編寫TestCase,由TestLoader加載TestCase到TestSuite,而後由TextTestRunner來運行TestSuite, 最後將運行的結果保存在TextTestResult中。
3、用途
unittest做用:單元測試、接口測試、UI測試。用來組織測試用例。
4、一個簡單的小例子
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()
執行結果