python单元测试框架unittest介绍和使用_Python+Selenium框架设计篇之-简单介绍unittest单元测试框架...
前面文章已經(jīng)簡單介紹了一些關(guān)于自動化測試框架的介紹,知道了什么是自動化測試框架,主要有哪些特點,基本組成部分等。在繼續(xù)介紹框架設計之前,我們先來學習一個工具,叫unittest。
unittest是一個單元測試框架,是Python編程的單元測試框架。有時候,也做叫做“PyUnit”,是Junit的Python語言版本。這里了解下,Junit是Java語言的單元測試框架,Java還有一個很好用的單元測試框架叫TestNG,本系列只學習Python,所以只需要unittest是Python里的一個單元測試框架就可以了。
unittest支持測試自動化,共享測試用例中的初始化和關(guān)閉退出代碼,在unittest中最小單元是test,也就是一個測試用例。要了解unittest單元測試框架,先來了解以下幾個重要的概念。
測試固件(test fixture)
一個測試固件包括兩部分,執(zhí)行測試代碼之前的準備部分和測試結(jié)束之后的清掃代碼。這兩部分一般用函數(shù)setUp()和tearDown()表示。這里舉例以下,例如要測試百度搜索selenium這個場景,我們的測試固件可以這樣寫,setUp()里寫打開瀏覽器,瀏覽器最大化,和打開百度首頁等腳本代碼;在tearDown()里寫結(jié)束搜索后,退出并關(guān)閉瀏覽器的代碼。
測試用例(test case)
unittest中管理的最小單元是測試用例,一個測試用例,包括測試固件,和具體測試業(yè)務的函數(shù)或者方法。一個測試用例中,測試固件可以不寫,但是至少有一個已test開頭的函數(shù)。unittest會自動化識別test開頭的函數(shù)是測試代碼,如果你寫的函數(shù)不是test開頭,unittest是不會執(zhí)行這個函數(shù)里面的腳本的,這個千萬要記住,所有的測試函數(shù)都要test開頭,記住是小寫的哦。
測試套件 (test suite)
很簡單,就是很多測試用例的集合,叫測試套件,一個測試套件可以隨意管理多個測試用例。如果測試用例比作單個學生,測試套件就是好像是班級的概念。
測試執(zhí)行器 (test runner)
test runner是一個用來執(zhí)行加載測試用例,并執(zhí)行用例,且提供測試輸出的一個組建。test runner可以加載test case或者test suite進行執(zhí)行測試任務。
我們舉例來,練習一下test fixture和test case的使用,學習unittest的簡單用法:
1. 新建一個testbaidu.py的文件
2. 導入unittest模塊
3. 當前測試類繼承unittest.TestCase,相當于當前利用unittest創(chuàng)建了一個test case,這個test case是能夠被unittest直接識別。
4. 寫setUP(),主要是打開瀏覽器和打開站點
5. 寫一個test_search()用例寫搜索的代碼
6. 寫tearDown(),主要是瀏覽器退出操作
相關(guān)腳本代碼如下:
解釋:
最后結(jié)尾處的unittest.main(),添加這個是支持在cmd,里面,cd到這個腳本文件所在的目錄,然后python 腳本名.py執(zhí)行,如果不添加這一段,是無法執(zhí)行cmd里面運行腳本的,在PyCharm中,不添加最后一段,也可以通過,右鍵 Run "unittest xxx",來達到執(zhí)行效果。
總結(jié)
以上是生活随笔為你收集整理的python单元测试框架unittest介绍和使用_Python+Selenium框架设计篇之-简单介绍unittest单元测试框架...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 海信75e5g电视如何查看整机信心
- 下一篇: python随机数生成的方法_pytho