隨着Python語言的使用愈來愈流行,基於Python的測試自動化框架也愈來愈流行。在項目選擇最佳框架時,開發人員和測試人員會有些沒法下手。作出選擇是應該判斷不少事情,框架的腳本質量,測試用例的簡單性以及運行模塊並找出其缺點的技術。這篇文章總結了測試自動化領域,適合Web端自動化框架(基於Python語言)以及它們相對於其餘方面的優缺點。所以,能夠幫助一些人根據須要和實際狀況選擇合適的的Python框架進行測試自動化。java
Robot Framework主要用於測試驅動的開發以及驗收測試,它是最好的測試框架之一。雖然是用Python開發的,它也能夠運行的IronPython
,這是.NET
爲基礎的和基於Java
的Jython
的。Robot Framework做爲Python框架可在全部平臺上兼容:Windows,MacOS或Linux。python
Robot Framework的優缺點是什麼?讓咱們看一下與其餘Python框架相比,做爲測試自動化框架的Robot的優缺點是什麼。編程
HTML
報告時卻很不方便。若是您是自動化領域的初學者,而且在開發方面經驗較少,那麼將Robot Framework用做頂級Python測試框架比pytest或pyunit更容易使用,由於它具備豐富的內置庫而且使用更容易的面向測試的DSL。可是,若是要開發複雜的自動化框架,最好切換到pytest或任何其餘涉及Python代碼的框架。數組
pytest用於各類軟件測試,是測試自動化的另外一個頂級Python測試框架。該工具是開源的,易於學習,能夠被質量保證團隊、開發團隊以及我的實踐或者開源項目使用。因爲其「斷言重寫」等有優秀的功能。至關一部分項目已經從unittest(Pyunit)切換爲pytest。框架
除了具備Python的使用知識外,pytest不須要任何複雜的東西。您所須要的只是一個具備命令行界面,python軟件包管理器和開發IDE的工做桌面。模塊化
pytest的優缺點是什麼?工具
必須首先學習一種成熟的語言,可是一旦掌握了這種語言,您將得到全部技能點,例如靜態代碼分析,對多個IDE的支持以及最重要的是編寫有效的測試用例。對於編寫功能測試用例和開發複雜的框架,它比unittest更好,可是若是您的目標是開發簡單的框架,則它的優點與Robot Framework有點類似。性能
Unittest或PyUnit是Python自帶的用於單元測試的標準測試自動化框架。它受到JUnit的極大啓發。基類TestCase提供斷言方法以及全部設置規範。TestCase子類中每一個方法的名稱均以「test」開頭。這使它們能夠做爲測試用例運行。您能夠將加載方法和TestSuite類用於該組並加載測試。您能夠一塊兒使用它們來構建自定義的測試運行器。就像使用JUnit進行Selenium測試同樣,unittest也可使用unittest-sml-reporting並生成XML報告。單元測試
幾乎沒有前提條件,由於Python默認狀況下自帶unittest。要使用它,您將須要python框架的標準知識,而且若是您想安裝其餘模塊,則須要安裝pip以及一個IDE進行開發。學習
PyUnit的優勢和缺點是什麼?
做爲Python標準庫的一部分,使用Unittest有多個優勢。
pytest引入了某些慣用做法,使測試人員能夠以很是緊湊的方式編寫更好的自動化代碼。儘管unittest是默認的測試自動化框架,可是它的工做原理和命名約定與標準Python代碼略有不一樣,這使它不是Python自動化測試的首選框架。
在上面的內容中,咱們討論了基於不一樣測試過程的Python框架。pytest,Robot框架,單元測試用於功能和單元測試。咱們能夠得出結論,對於功能測試,pytest是最好的。可是,若是您不熟悉基於python的自動化測試,那麼Robot Framework是入門的絕佳工具。儘管功能有限,可是它將使您輕鬆地走上正軌,快速產出效果明顯。