Python標準庫中自帶的單元測試框架
Unittest是Python標準庫中自帶的單元測試框架,支持自動化測試,測試用例的初始化和關閉測試用例的聚合等功能。
有一些類似于Java中的Junit單元測試框架,其模塊提供了許多類和方法處理各種測試工作,能夠完善結合Selenium、Appium、Request等實現UI自動化與接口自動化。
而Unittest的核心組件則是TestCase(測試用例)、TestFixture(測試固件)、TestSuite(測試套件)、和TestRunner(測試運行器)。
其中,一個完整的測試流程就是一個測試用例,通過一些特定的輸入得到相應,并對結果進行校驗的過程,所有的用例都是直接繼承于Unittest.TestCase類,TestCase是最小的測試單元,具有獨立性。
測試固件就是在執行測試之前的準備工作,比如數據清理、創建臨時數據庫、目錄、以及開啟某些服務進程。畢竟我們在編寫測試代碼時,總會有一些重復的代碼部分,就好比,當我們測試一個網站的登錄操作時,簡單分為三個用例:賬號和密碼都正確,賬號正確密碼錯誤,賬號錯誤密碼正確,這三種情況在執行用例時都需要首先訪問系統地址,再輸入賬號和密碼,點擊登錄操作,完成之后瀏覽器執行關閉操作,我們就可以通過setUp()將訪問地址作為前置條件,通過tearDown()將關閉瀏覽器作為后置條件,測試固件就是整合了代碼的公共部分。
測試套件就是把多個測試用例集合到一起。
而測試運行器則是提供測試用例運行環境,通過run()方法來執行測試用例,并在執行完成后將測試結果輸出。
了解了這幾個基本概念之后,再理解起來Unittest就不難了。
學習建議
綜上歸納總結,Unittest做為一個Python標準庫,和Python版本綁定,非常穩定,不用擔心兼容性的問題。
如果要學習一個單元測試框架,建議從Unittest開始,因為你可以接觸到loader、suite、runner這樣的組件,對理解測試框架更有幫助,學習好Unittest以后,再學習Nose2或者Pytest這樣更高級的框架,能有效提升編程效率。
很多同學在網上看到一些說Unittest過時或Unittest不高級的言論就開始批判,顯然是不對的。Unittest是其他Python單元測試框架的基礎,沒學好Unittest,其他的框架勢必也學不好。
以上內容為大家介紹Python標準庫中自帶的單元測試框架,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。http://www.mobiletrain.org/

相關推薦HOT
更多>>
Python如何輸出為文件
python輸出為文件使用withopen()as語句。使用示例:withopen('E:\python\python\test.txt','w')asf:f.writ...詳情>>
2023-11-09 22:08:08
怎么查看python變量的類型
python判斷變量的類型有兩種方法:type()和isinstance()對于基本的數據類型兩個的效果都一樣type()ip_port=['219.135.164.245',3128...詳情>>
2023-11-09 21:30:21
python如何生成文件夾
python中可以使用os.makedirs()方法創建多級目錄:os.makedirs()方法用于遞歸創建目錄。像mkdir(),但創建的所有intermediate-level文件夾需要包...詳情>>
2023-11-09 21:11:28
怎樣用python計算矩陣乘法?
python中計算矩陣乘法的方法:1、使用np.multiply()函數計算矩陣乘法函數作用:數組和矩陣對應位置相乘,輸出與相乘數組/矩陣的大小一致示例:n...詳情>>
2023-11-09 20:01:23