自動化框架和工具有哪些?


當我們在做UI自動化時,需要確定用什么自動化框架和工具,我們會考慮從三個方面入手:控制方案、執(zhí)行方案、結果上報方案,通俗點講就是:模擬人工操作的工具,管理和執(zhí)行測試用例的工具,用來展示結果報告的工具,同時還應該考慮這三部分所普適的編程語言,從這些方面入手去找到適合自己項目需求的框架或工具,然后將它們結合起來使用到項目中。在這之前,我們有必要了解下當前流行的一些框架和工具的類型有哪些,各有什么優(yōu)勢和劣勢。

1 測試框架類型

瀏覽器控制框架

? ? 主要是用來控制瀏覽器或者app上的元素,常見的框架有:

? ? Web: Selenium/TestCafe/Cypress/Playwright/Puppeteer/Protractor/Nightmare

? ? Mobile app: Appium/Robot Framework

管理測試用例設計框架

? ? 主要是用來組織測試用例設計以及測試用例的結構,常見的框架有:

? ? All: Cucumber

? ? JS: Mocha/Jest/Jamine/TestCafe/Cypress/CodeceptJS

? ? Ruby: Rspec

? ? Java: TestNG/Junit

? ? Python: pytest

管理測試用例執(zhí)行框架

? ? 主要是用來組織測試用例的執(zhí)行,常見的框架有:

? ? All: Cucumber

? ? JS: Mocha/Jest/Jamine/TestCafe/Cypress/CodeceptJS

? ? Ruby: Rspec

? ? Java: TestNG/Junit

? ? Python: pytest, unittest

?管理測試用例報告框架

主要是用來組織測試結果和展示,常見的框架有:

? ? All: Cucumber/Allure

? ? JS: Mocha/Jest/Jamine/TestCafe/Cypress/CodeceptJS

? ? Ruby: Rspec

? ? Java: TestNG/Junit

? ? Python: pytest, unittest

斷言框架

主要是用來測試結果的斷言,常見的框架有:

All: Selenium

? ? JS: Chai/Jest/Jamine/TestCafe/Cypress/CodeceptJS

覆蓋率框架

? ? 主要是用來收集代碼覆蓋率,常見的框架有:

? ? JS: Istanbul/Jest/blanket

? ? Ruby: Rcov

? ? Java: jacoo / cobertura

可視化測試框架

? ? 主要是用來做可視化測試,常見的框架有:

? ? JS: Cypress/CodeceptJS/Applitools

支持Mock/Spy/Stub

? ? 主要是用來對請求的東西做mock,常見的框架有:

? ? Sinon/Cypress/CodeceptJS

一體化框架

? ? 不需要和其他框架集成,完成整個測試活動, 常見的框架有:

? ? Cypress/CodeceptJS/TestCafe

2 各個測試框架的優(yōu)劣勢對比

參考:https://www.yuque.com/susieyao1314/softwaretesting/ixft8g?

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容