天天看點

python自動化測試學習-Python測試架構之unittest和pytest

unittest是python标準庫中自帶的單元測試架構,unittest有時候也被稱為pyunit,就像junit是java語言的标準單元測試架構一樣,unittest則是python語言的标準單元測試架構。

unittest支援自動化測試,測試用例的初始化、關閉和測試用例的聚合等功能,它有一個很重要的特性:它是通過類(class)的方式,将測試用例組織在一起。

示例:

python自動化測試學習-Python測試架構之unittest和pytest

執行結果:

python自動化測試學習-Python測試架構之unittest和pytest

注:unittest有一個關聯子產品unittest2,但unittest2僅适用于python 2.4-2.6。這是由于從python 2.7開始,unittest增加一些新的特性。為了在老的版本中支援這些特性,是以提供了unittest2這個庫。但對于python 2.7及之後的版本,unittest是唯一的。本次示例中使用的為python2.7。

pytest是python的另一個第三方單元測試庫。它的目的是讓單元測試變得更容易,并且也能擴充到支援應用層面複雜的功能測試。

pytest的特性有:

支援用簡單的assert語句實作豐富的斷言,無需複雜的self.assert*函數

自動識别測試子產品和測試函數

子產品化夾具用以管理各類測試資源

對 unittest 完全相容,對 nose基本相容

支援python3和pypy3

豐富的插件生态,已有300多個各式各樣的插件,社群繁榮

python自動化測試學習-Python測試架構之unittest和pytest
python自動化測試學習-Python測試架構之unittest和pytest
python自動化測試學習-Python測試架構之unittest和pytest

總結:

總體來說,unittest用例格式複雜,相容性無,插件少,二次開發友善。pytest更加友善快捷,用例格式簡單,可以執行unittest風格的測試用例,無須修改unittest用例的任何代碼,有較好的相容性。pytest插件豐富,比如flask插件,可用于用例出錯重跑,還有xdist插件,可用于裝置并行執行,效率更高。

python自動化測試學習-Python測試架構之unittest和pytest

上面是我收集的一些視訊資源,在這個過程中幫到了我很多。如果你不想再體驗一次自學時找不到資料,沒人解答問題,堅持幾天便放棄的感受的話,可以加入我們扣扣群【313782132 】,裡面有各種軟體測試資源和技術讨論。

python自動化測試學習-Python測試架構之unittest和pytest

當然還有面試,面試一般分為技術面和hr面,形式的話很少有群面,少部分企業可能會有一個交叉面,不過總的來說,技術面基本就是考察你的專業技術水準的,hr面的話主要是看這個人的綜合素質以及家庭情況符不符合公司要求,一般來講,技術的話隻要通過了技術面hr面基本上是沒有問題(也有少數企業hr面會刷很多人)

我們主要來說技術面,技術面的話主要是考察專業技術知識和水準,上面也是我整理好的精選面試題。

推薦好文:

軟體自動化測試工具有哪些?手工測試與自動化測試應用場景差別

【python】自動化測試的7個步驟

自動化軟體測試面試題(面試前準備篇)

論初學者自動化測試–終極指南

加油吧,測試人!如果你需要提升規劃,那就行動吧,在路上總比在起點觀望的要好。事必有法,然後有成。

資源不錯就給個推薦吧~