unittest單元測試架構(python中自帶單元架構)
一、unittst架構的作用
當我們寫的用例越來越多時,我們就需要考慮用例編寫的規範與組織,以便于後期的維護,而unittest正是這樣一款工具
二、unittest是python自帶的标準庫中的子產品,其中包括:
1、testcase類 (測試用例)
2、testsuite類 (測試套件)
3、testloader類(搜尋測試路徑)
4、texttestrunner類(run(test))
5、texttestresult類(測試結果)
6、testfixture類(setup 和 tear down)
解釋下:
testcase:
一個testcase的執行個體就是一個測試用例,測試用例就是一個完整的測試流程,包括初始化setup、運作run、測試後的還原teardown
testsuite:
對一個功能的測試往往需要多個測試用例的,可以把多的測試用例集合在一起執行,這就是testsuite的概念。常用addtest()方法将一個測試用例添加到測試套件中
texttestrunner:
是用來執行測試用例的,其中的run(test)用來執行testsuite/testcase。
texttestresult:
測試的結果會儲存在texttestresult執行個體中
testfixture:
測試準備前要做的工作和測試執行完後要做的工作.包括setup()和teardown()。通過覆寫testcase的setup和teardown來實作。
testloader:
是用來搜尋所有以test開頭的測試用例,然後将其加入到testsuite中
圖形化解釋:如下圖
三、架構的組成
在寫測試類以及測試用例時要規定一個命名習慣,一般測試類可以以test開頭,也可以以test結尾。測試用例一般是以test開頭。
eg:結構如下:
import unittest #導入unittest包
#建立測試類:從unittest.testcase繼承
classromannumeralconvertertest(unittest.testcase):
def setup(self): #初始化測試環境
def teardown(self): #還原測試環境
def test_case(self):測試用例
====================================================
四、
講解内容
(1)unittest作用?
unittest 單元測試架構 是用來管理群組織測試用例,友善後期維護
(2)市場常見的測試單元測試架構?
unittest (自帶标準庫) 、pytest (第三庫)
(3)unitttest 單元測試架構結構
案例1:架構第一種方法:
類的開始
.....
方法開始
----------------------------------------------------------------------
1111
ran 5 tests in 0.000s
方法結束
ok
2222
3333
a
類的結束
備注:1、unittest 運作的順序:1-9,大寫字母,小寫字母
2、運作用例必須是test開頭
3、每一次用例執行,放的開始和結束都會執行一次
4、類的開始和類的結束隻執行一次
============================================
案例2: 執行部分用例(指定的用例)
案例3:執行一個路徑下所有所有用例
案例4:使用報告模闆生成測試報告
案例5:結合實際案例編寫ui自動化單元測試架構