
對於不斷發展的Web景觀,快速,可擴展和可靠的測試解決方案。
Testplane(Ex-Hermione)是一個戰鬥的框架,用於在任何規模,任何瀏覽器和任何平台上測試Web應用程序。
?開發人員友好:從我們的安裝嚮導,打字稿支持,通過實時測試編輯,高級HTML-Reporter以及智能功能(如自動等待)等智能功能,享受無憂的開始。
?視覺測試重新定義:捕獲從特定細節到整個頁面的任何內容,使用簡化的UI管理DIFF,探索各種差異模式,並讓測試平面鏟球片狀。
跨環境測試:忘記與幾個最新的鍍鉻構建相關。測試平面超越了此功能,可在真實設備和廣泛的自動化協議支持上提供測試,從而反映用戶的實際環境。
?毫不費力地擴展:在遠程瀏覽器網格上進行數千個測試或從超快速的本地執行中受益。測試平面提供碎片,並行測試執行和隔離瀏覽器上下文。
⚡無限的可擴展性: Testplane提供了一個多功能插件系統,在Github上使用數十個開源插件,以及自定義的記者,命令和執行邏輯。
?各種測試環境:使用Testplane,您不僅可以在Node.js環境中運行測試,還可以在瀏覽器中運行測試。這意味著您可以在Node.js和瀏覽器中的組件/單元測試中運行E2E/集成測試。
注意:如果您希望手動安裝,則可以運行
npm i -D testplane。查看文檔以獲取詳細信息。
使用CLI嚮導設置測試平面並生成基本配置:
npm init testplane@latest new-testplane-project您可以添加-- --verbose參數以在特定問題模式下啟動工具,以選擇自定義軟件包管理器或安裝額外的插件。
打開新生成的文件testplane-tests/example.testplane.ts 。我們將修改測試以確保描述包括預期文本:
describe ( "test" , ( ) => {
it ( "example" , async ( { browser } ) => {
await browser . url ( "https://example.com/" ) ;
const description = await browser . $ ( "p" ) ;
await expect ( description ) . toHaveTextContaining ( "for use in illustrative examples in documents" ) ;
} ) ;
} ) ;發射GUI:
npx testplane gui嘗試運行測試並觀看通過。現在,讓我們用視覺斷言替換描述文本檢查。使用assertView命令進行視覺檢查:
- await expect(description).toHaveTextContaining("for use in illustrative examples in documents");
+ await description.assertView("description"); // "description" is just a name of the assertion再次運行測試。它將失敗,因為缺少標題的參考圖像。您可以接受差異並重新運行測試,然後通過。
恭喜您編寫了您的第一個測試平面測試,該測試將導航到頁面並執行視覺斷言。潛入文檔,以發現測試計劃必須提供的更多令人敬畏的功能!
您可以在我們的網站上找到文檔。
隨時訪問這些頁面,以簡要概述一些測試平面功能:
我們在網站上發布最實際的信息,指南和更改。您可以通過將拉力請求發送到此存儲庫來改進它。
該項目以前被稱為“赫敏”,但最終出現了一些版權和商標問題,導致決定重塑品牌。經過一些討論,我們定居“測試平面”作為官方新標題。考慮到這種變化僅僅是重塑品牌,我們進行了現有版本的數量,而不是重新開始。因此,Testplane v8.x是Hermione v8.x的倒入替代品。
了解有關文檔中從赫敏到測試平面的遷移的更多信息。
我們使用此存儲庫的使命是使測試平面開發過程打開,同時繼續改善其功能,性能和易用性。我們希望其他組織在我們的項目中找到價值,並從我們的工作中受益。
我們歡迎並感謝社區貢獻。為了確保我們的努力同步,我們建議提出問題或事先發表評論。
訪問我們的貢獻指南,以了解有關我們的開發過程以及如何參與的更多信息。
測試計劃已獲得麻省理工學院許可。