套件概覽
Approval Tests 是 Dart 中的一種測試方法,透過將輸出與已核准的參考檔案進行比較來驗證輸出。受到 ApprovalTests 模式的啟發,它透過自動捕獲和驗證預期輸出,簡化了對複雜或結構化資料(如 JSON、HTML 或日誌)的測試。開發者撰寫產生輸出的測試,然後審查並『核准』為正確結果。未來的測試執行會將新輸出與已核准版本進行比對,標示出差異。此方法特別適用於減少整合測試和端對端測試中的重複程式碼。
適用情境
- 驗證複雜的輸出,如 JSON 或 HTML
- 驗證 UI 快照
- 測試 API 回應
- 自動化回歸測試
- 審查日誌輸出
主要特色
- 自動輸出審批流程
- 支援多種輸出格式
- 與現有測試套件的輕鬆整合
- 視覺差異檢測變更
- 簡單的設定,程式碼量最少
適合對象
- 測試人員正在處理結構化數據
- 使用回歸測試的團隊
- 尋求低維護測試驗證的開發人員
- 頻繁輸出變更的專案
- CI/CD流水線需要可靠的輸出檢查
使用建議
- 需要手動批准首次執行的輸出
- 基於檔案的儲存可能會增加倉庫大小
- 不適合高度動態或隨機化資料
- 在共享的CI環境中需要謹慎處理
- 在合併之前必須審查核准