Magnitude:一個基于AI的端到端Web測試平臺
Magnitude是什么?
Magnitude是一個基于ai的端到端Web測試平臺,可以通過自然語言和視覺智能技術簡化Web應用的測試流程。它提供了一個SDK和一個UI儀表板,支持托管服務和自托管兩種模式,能夠幫助開發者和測試人員快速編寫、執行和管理測試用例。
Magnitude功能特征
自然語言測試編寫
使用自然語言描述測試用例,無需編寫復雜的代碼或依賴DOM元素。
示例: TypeScript 復制 test('can log in and create company') .step('Log in to the app') .data({ username: 'test-user@magnitude.run' }) .secureData({ password: 'test' }) .check('Can see dashboard') .step('Create a new company') .data('Make up the first 2 values and use defaults for the rest') .check('Company added successfully');
視覺驅動的測試執行
內置視覺AI代理,能夠識別Web界面的變化并自動調整測試步驟,確保測試用例的穩定性和可靠性。
測試用例對界面變化具有高度適應性,無需頻繁更新。
托管與自托管支持
托管服務:提供托管的瀏覽器基礎設施和LLM(大型語言模型)服務,用戶無需自行搭建環境。
自托管:完全開源,支持自托管模式,用戶可以使用自己的基礎設施和LLM提供商。
測試管理與可視化
提供UI儀表板,用于管理測試用例、查看測試運行歷史和結果。
支持本地運行和CI/CD管道集成,方便自動化測試。
智能推理與動態調整
內置推理代理,能夠根據測試執行中的問題動態調整測試策略。
測試計劃保存后可以重復執行,確保每次測試的一致性。
應用場景
Web應用開發:在開發過程中快速編寫和執行測試用例,確保功能的正確性和穩定性。
持續集成/持續部署(CI/CD):集成到CI/CD管道中,自動化運行測試,提高開發效率。
界面變更測試:由于其視覺驅動的特性,Magnitude能夠有效應對界面變化,減少測試維護成本。
團隊協作:通過自然語言編寫測試用例,降低測試人員的技術門檻,便于團隊協作和知識共享。
使用方法
1. 安裝Magnitude SDK
在Node.js項目中安裝Magnitude測試運行器:
npm install --save-dev magnitude-test
2. 初始化Magnitude
運行以下命令初始化Magnitude,生成基本的測試目錄和配置文件:
npx magnitude init
3. 配置Magnitude
如果使用托管服務,需要獲取Magnitude API密鑰并設置環境變量:
export MAGNITUDE_API_KEY=<your-api-key-here>
如果使用自托管模式,需要自行配置LLM和瀏覽器基礎設施。
4. 編寫測試用例
使用自然語言編寫測試用例,示例如下:
import { test } from 'magnitude-test'; test('can log in and create company') .step('Log in to the app') .data({ username: 'test-user@magnitude.run' }) .secureData({ password: 'test' }) .check('Can see dashboard') .step('Create a new company') .data('Make up the first 2 values and use defaults for the rest') .check('Company added successfully');
5. 運行測試
使用以下命令運行Magnitude測試:
npx magnitude run
測試結果可以在Magnitude儀表板中查看。
GitHub代碼庫:https://github.com/magnitudedev/magnitude
Magnitude官網:https://magnitude.run/