測試自動化是使用框架和工具自動執(zhí)行測試以更快地執(zhí)行測試并減少對人工測試人員的需求的實踐。在這種軟件測試方法中,創(chuàng)建可重用的測試腳本來測試應(yīng)用程序的功能,從而減少整體回歸時間并促進更快的軟件發(fā)布。利用測試自動化可縮短測試生命周期的回歸時間并提高發(fā)布質(zhì)量。
根據(jù)Future Market Insights集團發(fā)布的一份報告,到14年底,全球自動化測試市場預(yù)計將以3.93%的復(fù)合年增長率增長,市場價值將達到6億美元。
自動化測試腳本可以用幾種不同的編程語言編寫,例如Python,C#,Ruby,Java等。其中,Python是迄今為止自動化工程師用于自動化測試的最流行的語言。它提供了用于自動化測試的各種有用的工具和庫。Python還廣泛支持許多不同類型的測試自動化框架。除了默認的Python測試框架,單元測試(或PyUnit)之外,還有各種Python框架更適合該項目。可以根據(jù)項目需求、規(guī)模和實踐的自動化框架來選擇最適合項目的測試框架,例如 TDD(測試驅(qū)動開發(fā))、BDD(行為驅(qū)動開發(fā))、ATDD(驗收測試驅(qū)動開發(fā))、KDD(關(guān)鍵字驅(qū)動開發(fā))等。
Python 測試框架的類型
PyTest:
PyTest 是一個開源框架,它支持單元測試、API 測試和功能測試。在 PyTest 中,測試用例遵循特定的格式,其中測試以 test_ 開頭或以 _test 結(jié)尾。
先決條件:
測試驅(qū)動開發(fā)框架的基礎(chǔ)知識
蟒蛇的工作知識
優(yōu)點:
可用于練習(xí) TDD 的項目
幫助以緊湊的方式編寫測試服
夾具和參數(shù)化測試涵蓋了多種測試用例組合,無需重寫它們
標(biāo)記可用于對測試進行分組或在運行整個測試套件時跳過它們
許多內(nèi)置和第三方插件支持,可以添加新功能,如報告生成等。
支持使用 pytest-xdist 插件并行執(zhí)行測試用例
巨大的社區(qū)支持
實現(xiàn) python 裝飾器,可以完全利用 python 編程靈活性
缺點:
它與其他python框架不兼容。如果有人想遷移到另一個 python 框架,則必須重寫所有測試。
它純粹基于python編程,需要對python編程有扎實的知識。
機器人是一個廣泛用于硒測試自動化的開源框架。
先決條件:
關(guān)鍵詞驅(qū)動開發(fā)框架基礎(chǔ)知識
創(chuàng)建新關(guān)鍵字需要python的工作知識
優(yōu)點:
可用于實踐 ATDD、BDD 或關(guān)鍵字驅(qū)動開發(fā)的項目
如果使用預(yù)定義的關(guān)鍵字,則不需要事先的編程知識
對于來自非技術(shù)背景的客戶和高級管理人員來說,易于理解。
許多庫和內(nèi)置關(guān)鍵字,特別是用于硒測試
良好的內(nèi)置報告機制
良好的社區(qū)支持
缺點:
難以自定義 HTML 報告
沒有用于并行測試執(zhí)行的內(nèi)置功能。Pabot 可用于并行執(zhí)行測試用例
創(chuàng)建新關(guān)鍵字可能很耗時,或者可能會限制具有編碼知識的測試人員,因此靈活性較低
Beact
Beact 是一個最適合 Web 測試的開源框架。腳本或功能文件的語法非常接近外行英語。
先決條件:
行為驅(qū)動發(fā)展框架的基本知識
蟒蛇的工作知識
優(yōu)點:
可用于練習(xí) BDD 的項目
環(huán)境功能、配置設(shè)置、夾具等的可用性易于設(shè)置和清理
易于理解的框架
可以與其他Web開發(fā)框架(如燒瓶等)集成。
易于添加新的測試用例
以 JUnit 格式生成報告
出色的文檔支持
缺點:
不支持并行執(zhí)行測試用例
只能用于黑盒測試
不適合集成測試
PyUnit
PyUnit(單元測試)是 Python 附帶的單元測試的默認測試框架。與 PyTest 類似,在 PyUnit 中,測試用例也遵循特定的格式,其中測試以 test_ 開頭或以 _test 結(jié)尾。
先決條件:
Python的工作知識
優(yōu)點:
無需額外安裝軟件包
測試報告生成速度更快
只需在終端上鍵入測試名稱即可運行單個測試
默認輸出易于理解
缺點:
將 PyUnit 用于大型項目會受到對過多抽象的支持和大量樣板代碼的嚴重阻礙。
Nose2
Nose2 是單元測試的擴展。Nose2 通過提供插件增加了對 PyUnit 框架的支持。
先決條件:
Python的工作知識
優(yōu)點:
易于安裝
具有夾具、參數(shù)化測試等功能。像 PyTest
測試可以使用(多進程)mp插件與多個進程并行執(zhí)行
可以添加許多插件,具有報告、硒測試自動化等功能。
缺點:
文檔不廣泛
盡管開發(fā)周期較短,但自動化測試提供了幾個優(yōu)勢,這些優(yōu)勢對于生成高質(zhì)量的應(yīng)用程序至關(guān)重要。它最大限度地減少了手動測試過程中不可避免地發(fā)生人為錯誤的可能性。通過自動化測試,軟件質(zhì)量得到提高,缺陷危及交付時間的可能性降低。
審核編輯:郭婷
-
Web
+關(guān)注
關(guān)注
2文章
1287瀏覽量
71387 -
自動化
+關(guān)注
關(guān)注
29文章
5780瀏覽量
84817 -
python
+關(guān)注
關(guān)注
56文章
4827瀏覽量
86701
發(fā)布評論請先 登錄
OPhone自動化測試技術(shù)概述
自動化測試框架思想和構(gòu)建
HarmonyOS自動化測試框架—Hypium
基于Web的自動化測試框架的研究

Python自動化測試框架有哪些?
Python接口測試框架實戰(zhàn)與自動化進階視頻教程免費下載

什么是自動化測試框架?
云測試自動化中的Python
使用Python實現(xiàn)功能測試自動化

OpenHarmony自動化測試框架開發(fā)指南

Facebook群組自動化python – 網(wǎng)絡(luò)自動化

評論