Java學習之Java自動化工具有哪些
在Java開發工具中,Java自動化測試工具也是其中一種,下面千鋒重慶Java的小編來給大家列一個Java自動化測試工具清單,希望對大家能夠有所幫助。
xUnit frameworks 單元測試框架
JUnit - 常用的測試框架
TestNG - 測試框架
Test Data Supplier - TestNG DataProvider封裝,讓資料的生成更加靈活
TDD \ ATDD \ BDD
工具
JBehave - Behaviour-Driven Development (BDD)測試框架. BDD是從 test-driven development (TDD) 和 acceptance-test演進而來, 讓用例的編寫對新手更加友好和直覺化
Cucumber-JVM - 純 java的Cucumber實現,支援大部分流行的jvm語言
JGiven - 開發者友好且實用的BDD工具. 開發者使用純java及流利API編寫測試場景, JGiven負責生成領域專家可讀的報告
easyb - Java平臺的BDD框架. 通過使用Domain Specific Language(DSL), easyb致力於讓文件可讀可執行
robotframework - 最有名的acceptance test-driven development (ATDD)測試框架
awesome-robotframework - 各種rf的擴充套件庫
Spectrum - BDD-style test runner,支援Java 8. 靈感來自於Jasmine, RSpec和Cucumber. -
cucumber-report-db - 把Cucumber的結果存到資料庫裡,並且提供測試報告
Model-Based Testing
GraphWalker - Model-Based測試框架. 這個工具可以從 graphml, dot 或 json檔案中讀取model,然後自動建立測試用例
Code analysis and coverage 程式碼掃描和程式碼覆蓋率
SonarQube - 管理程式碼質量的開源工具
Gradle Quality Plugin - 靜態程式碼分析工具,支援Java和Groovy,使用 Checkstyle, PMD, FindBugs 和CodeNarc. 外掛使用了統一的控制檯輸出並簡化了開發者的工作流: 檢視不規範的錯誤時只需要留意控制檯就好,並且控制檯輸出的體驗跟java編譯錯誤的輸入體驗一致
Qulice - Qulice是Java專案的程式碼掃描和質量控制工具. 包含了最好的靜態程式碼掃描工具和預配置選項。你不需要單獨再對這些工具進行配置了。
JaCoCo - JaCoCo是免費的程式碼覆蓋率統計工具,應該也是應用最廣泛的覆蓋率工具了。
Web UI test automation web ui自動化工具
libraries
Selenium - 瀏覽器自動化工具
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支援windows/linux/mac系統
frameworks and wrappers 框架及封裝
Selenide - 簡潔的Selenium封裝,讓 UI用例的編寫更容易
Selenified - 開源的測試框架,目的是讓selenium測試更加簡單,提供了簡單的介面去新增測試報告,錯誤處理以及執行緒安全的執行模式。可以執行在本機或雲端(Grid or SauceLabs).
Serenity BDD (Thucydides) - 創新的開源庫,讓你可以更高效的編寫使用者驗收用例, 並可以根據用例去生成專案文件及測試報告
htmlelements - 讓web測試時元素互動更加簡單的java庫
atlassian-selenium - 讓開發者可以更高效的編寫Selenium/WebDriver功能測試的開源庫
stevia - Persado出品的開源自動化測試框架
darcy - 開源的測試框架,支援java 8,提供了具有表意性以及使用簡單的API
Satisfy - 基於Thucydides和Jbehave的開源測試框架。支援WebUI, SOAP, REST, emails, files,並支援建立隨機資料,開箱即用
JDI UI Test Automation Framework - UI自動化測試框架。擴充套件了Page Object設計模式,並加入了一些常用的元素
Geb Framework - 基於groovy自動化測試框架。專為Webdriver Page Object設計模式以及Spock Framework(BDD)的整合而設計。
FluentLenium - FluentLenium可以幫助你寫出可讀性好, 可重用, 可靠且靈活的Web UI功能測試用例. FluentLenium 提供了為Selenium實現的流利api,併為selenium使用者的一些常見問題提供瞭解決方案。
Selion - 基於TestNG和Selenium提供了一系列的功能,讓你可以在短時間內搞定webdriver. 支援web和移動端測試
extensions 擴充套件
BrowserMob Proxy -從瀏覽器獲取效能資料的簡單工具, 一般跟自動化工具,比如Selenium和Watir配合使用
Selenium-Grid-Extras - 讓Selenium Grid 節點的管理更加簡單, 並通過清理測試環境的方式讓節點更加穩定
Selenium Grid Extensions - 擴充套件了Selenium grid,以及可以在執行selenium用例的同時執行Sikuli用例
Selenium Grid Router 輕量級的server,作用是把Selenium Wedriver的請求分發到多個Selenium hub。
Docker Selenium Grid - 提供了native的視訊錄製功能,支援Selenium Grid,最初被設計為跟docker-selenium一同使用。
Video Recorder Java - 使用自動化測試用例來錄製視訊的java庫
Zalenium - 提供一次性的靈活的Docker-based Selenium Grid視訊錄製功能, 支援實時預覽和online/offline控制面板。
SikuliFactory - 為SikuliX提供了PageFactory實現。
Mailosaur - 郵件自動化測試工具,基於Mailosaur。
Mobile test automation 移動自動化測試
Appium - 開源的自動化測試框架,可以測試native/hybrid/mobile web應用。核心是基於webdriver協議進行了擴充套件
Calabash - 跨平臺的自動化測試框架,支援Android和iOS的原生應用以及hybrid應用。 Calabash的語法非常容易理解,甚至可以讓非技術人員編寫和執行基於上述平臺的自動化測試用例。
Robotium - 安卓自動化測試框架,支援原生及hybrid應用. Robotium讓我們可以非常方便的編寫強大和穩定的黑盒UI測試用例。 有了Robotium的支援, 測試開發工程師可以編寫安卓應用的功能用例系統用例以及使用者驗收用例。
UIautomator - 提供了高效的測試UI的方式。 可以建立支援真機及模擬器執行的自動化測試用例,幷包含了可以檢視和分析安卓UI的viewer。
Espresso - 比較新的開源自動化測試框架, 讓開發者和測試人員都可以編寫UI用例。 Espresso的api簡單且易學,你可以非常快的使用這個框架上手安卓自動化測試
API test automation 介面自動化測試
Karate-DSL - Karate是BDD風格的使用javascript實現的測試框架。可以讓你呼叫任何web-service型別的介面並對響應進行斷言。
Windows UI test automation windows ui自動化測試工具
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支援多作業系統
Winium.Desktop - 測試Windows應用(主要是基於WinForms和WPF平臺)的自動化測試工具. 實現了Selenium Remote WebDriver協議
Unix \ Linux UI test automation Unix \ Linux ui自動化工具
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支援多作業系統
MacOS UI test automation mac ui自動化工具
SikuliX - 基於OpenCV的 GUI 測試框架, 使用圖片識別技術,支援多作業系統
Server side test automation 服務端自動化測試工具
Citrus - Javas實現的測試框架,支援企業級SOA應用的e2e服務測試, 支援 HTTP, JMS, TCP/IP, FTP, SOAP協議,以及XML和JSON.