工程開發
flaky-detect
透過分析持續整合 (CI) 歷史、執行模式與程式碼結構,識別、分類並排除不穩定的測試 (flaky tests),以提升測試套件的可靠性。
簡介
Flaky Detect 技能專為工程團隊設計,旨在隔離那些導致生產力低落的非確定性測試故障(即不穩定測試)。透過整合持續整合 (CI) 歷史數據與靜態程式碼分析,此工具能協助開發者超越簡單的偵錯,針對間歇性測試失敗實施根本原因解決方案。適用於 CI/CD 工程師、QA 主管及處理大規模測試套件不穩定問題的軟體開發者。
-
分析 GitHub Actions 與自定義 CI 日誌,以檢測各測試執行期間的統計性通過/失敗異常。
-
根據行業分類標準歸納不穩定行為,包括非同步/時間同步問題、測試順序依賴、環境差異、資源限制與非確定性邏輯。
-
執行測試檔案的靜態分析,識別如顯式超時、未等待的 Promise、不受控的隨機性以及對外部環境的依賴等常見缺陷模式。
-
提供具體的程式碼改善建議,例如使用模擬時間函數(如 vi.setSystemTime)或確保測試隔離性。
-
支援多輪重複執行分析,以高信度識別間歇性故障。
-
當使用者回報 CI 管線預測失敗或特定測試無故時而通過、時而失敗時,建議啟用此技能。
-
輸入要求包括對歷史 CI 日誌或測試執行結果的存取權限。輸出格式為結構化報告,詳列通過率、根本原因分類、程式碼層級的漏洞位置以及修正建議。
-
實務限制包含需要足夠的歷史數據量(如至少 5 次執行)以計算可靠的通過率。雖然提供自動化檢測,建議仍需人工驗證修正方案,以確保測試意圖不被誤改。
-
在進行測試可靠性審核、發佈準備或維護遺留測試基礎架構時使用此工具,以確保部署過程的穩定性與可重複性。
倉庫統計
- Star 數
- 127
- Fork 數
- 18
- Open Issue 數
- 1
- 主要語言
- TypeScript
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年4月30日 上午08:00