前言
本文介紹了一些測試工具,它們可以幫助我們快速、有效地交付。
Tricentis 主導的一項全球調查為我們提供了幾個有關測試趨勢的重要觀察。趨勢表明,團隊傾向于使用功能測試,這可以理解,但是手動測試也將保留下來。
怎么選擇測試框架?這有一些標準:
- 相對快速和方便設置(或開箱即用的解決方案)
- 支持社區(qū)或開發(fā)者自己可以為其框架提供支持
- 有清晰而全面的文檔
- 與其他工具充分集成
- 有一些很酷的功能,例如代碼可重用性支持在多個平臺和環(huán)境進行測試
2Selenium(功能測試)
Selenium 誕生于 2004 年,它已經逐漸成為 QA 工程師的必備測試工具。它在 GitHub 上有近 20000 Star,是市場上受喜愛的功能測試工具之一。
一般來說,Selenium 是一個涵蓋幾種工具的生態(tài)系統:Selenium WebDriver、Selenium IDE 和 Selenium Grid。
Selenium 核心特性
- 跨瀏覽器和跨平臺測試
- 多種測試語言(Python、Java、C#等)
- 高度可調整的開源代碼
- 并行運行測試
Selenium 亮點特性
新更新
- Selenium 4(攔截網絡流量、Chrome 瀏覽器調試協議等)
3Ranorex(功能測試)
Ranorex 是一款端到端的功能測試工具,具有自動超時處理、動態(tài)網頁元素識別和內嵌頁面對象映射。
Ranorex 核心特性
- 跨瀏覽器和跨平臺測試
- 具有回歸、數據驅動、關鍵字驅動測試選項
- 擴展的、詳細的報告
- 可用于真實及模擬 iOS 和 Android 設備的自動化測試
Ranorex 亮點特性
新更新
4PractiTest(探索性測試)
PractiTest 本來被定位為應用生命周期管理方案的一體化工具,即該工具提供了手動和測試自動化管理選項。但是,最令人感興趣的部分是探索性測試功能。
PractiTest 核心特性
- 測試用例管理
- 問題狀態(tài)管理
- 可定制的儀表板,并附有詳細報告
- 可重用的測試
- 數據結構
- 從運行中可自動提交 bug
- 與其他工具集成:Jira(云、數據中心、服務器)
PractiTest 亮點特性
新更新
5LoadNinja(負載測試)
Load Ninja 是一個性能和負載測試框架,用于診斷 API 和 UI 性能問題。LoadNinja 具有內置的 TrueLoad 技術,與傳統的按協議進行的性能測試相比,該技術可使測試終端用戶體驗的速度提高 60%。
LoadNinja 核心特性
- 數以千計的在真實瀏覽器上的用法
- 測試腳本的錄制和回放
- 問題實時診斷
LoadNinja 亮點特性
- 使用 REST API 和自定義 CI/CD 插件進行自動化負載測試
新更新
- 對于手動停止的測試可下載 CSV 報告
- 可以對錄制頁面與回放頁面進行比較
6Optimizely(UI/UX)
Optimizely 是一個強大的 UI/UX 測試工具,可以對網站或者應用中重新設計或實現的新特性進行演練測試。該工具主要用于在推出新特性前驗證變更,以減少失敗的風險。
Optimizely 核心特性
- A/B 測試構建及運行
- 順序測試新功能
- FDR 錯誤控制
- 借助 snippets 輕松集成到代碼中
Optimizely 亮點特性
- 使用 API 控制實驗,并可隨時監(jiān)控統計信息和實驗結果
新更新
- Optimizely Agent 將框架部署到所選的基礎設施提供者
7SonarQube(安全性測試)
SonarQube 是一個安全性測試工具,可在代碼審查期間提供代碼庫漏洞檢測和協助。
SonarQube 核心特性
- 多語言覆蓋(27 種編程語言)
- 可疑代碼段檢測
- 與 GitHub、GitLab、Azure DevOps、Bitbucket 集成
SonarQube 亮點特性
新更新
- JavaScript SAST 分析和 Azure DevOps Server 集成
- 對于 C++ 的支持更強
8Cucumber(驗收測試)
Cucumber 是一個行為驅動的開發(fā)測試工具,用于增強終端用戶的體驗。Cucumber 涵蓋幾個產品:Cucumber Open(可執(zhí)行的規(guī)范驗證)、CucumberStudio(BDD 協作平臺)和 Cucumber School(培訓和教程)。
Cucumber 核心特性
- 與源代碼控制系統集成
- 對不喜歡編碼的人來說,這是一個非常合適的框架
- 對客戶來說容易理解,是一種語法簡單的 Gherkin 語言
- 大量面向業(yè)務的文檔
- 兼容多種語言,包括 Java 和 Python
Cucumber 亮點特性
新更新
9SoapUI(API 功能測試)
一種功能模擬測試工具,主要使用數據驅動方法,提高了測試覆蓋率。
SoapUI 核心特性
- 用于公共或第三方 API 的安全性測試
- 腳本化測試創(chuàng)建
- 使用“虛擬用戶測試”工具進行 API 性能測試
- 詳細全面的報告
SoapUI 亮點特性
新更新
- API Explorer,一種 API 響應的即時調試器
10TestNG(單元測試)
TestNG 是基于 Java 的單元測試工具,受非常流行的工具 NUnit 和 JUnit 啟發(fā)。與 NUnit 和 JUnit 相比,TestNG 具有更加強大的功能,使其成為集成和端到端測試的多功能工具。但是,它還是最適合于單元測試。
TestNG 核心特性
- 多線程測試執(zhí)行
- 數據驅動的測試支持
- 使用 JDK 方式提供日志和運行
- 借助 IDE 插件或使用了 build.xml 的 Apache Ant,從而得以靈活執(zhí)行
TestNG 亮點特性
新更新
- 通過回調支持測試重試
- 可以禁用通過 SPI 加載的強制偵聽
11MantisBT(手工測試)
MantisBT 是一個開源的缺陷記錄工具,專門為 QA 工程師和測試人員而設計。它提供本地和托管的安裝環(huán)境,并支持所有運行 PHP 的平臺(Windows、Linux、Mac)。
MantisBT 核心特性
- 內置報告選項
- 從時間跟蹤工具到聊天工具的多樣化集成
- 適用于臺式機和移動設備
- 與您選擇的插件兼容
- 多 DBMS 和多語言庫支持
MantisBT 亮點特性
- 具有可跟蹤進度的路線圖工具,可用于發(fā)布計劃
新更新
12QA 工程師可能用到的其他工具
Jenkins
這是一款先進的 CI 工具,可以成功地運用于實時測試代碼庫變更。它還是一個可以整合到測試過程中并使某些關鍵過程自動化的好工具。
GitHub
GitHub 是成百上千萬開發(fā)人員使用的版本控制存儲庫。許多 QA 工具可以鏈接到 GitHub 帳戶,以便自動記錄報告缺陷。例如,當使用 GitHub 進行缺陷跟蹤時,您可以在其他測試工具上運行手動測試。
Text Shortcode
Tmux 是一種流行的虛擬終端復用器,用來管理一個終端窗口中運行的多個終端會話。您可以將它們與一個終端分離,然后將這些會話附加到另一個終端上,并使用命令行界面,而不必將它們從一個會話中轉儲并啟動另一個會話。它類似于 GNU Screen,但不同之處在于它經伯克利軟件發(fā)行(BSD)授權許可。
13結論
每個月都會出現新框架,而且現有框架也在不斷地演進。希望這份清單可以幫你選出合適的測試工具。