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