技術與測試 深入了解 C · 業界慣例 平台: 通用

Flaky Test

不穩定測試

不穩定測試會在程式沒變時忽好忽壞。常見原因有時間、順序、共用狀態、隨機值或外部系統。

看看怎麼運作
也有人這樣說 Flaky Test間歇失敗測試非確定性測試測試飄忽

看看怎麼運作

原創情境範例不穩定測試

另一個例子

瀏覽器測試在平行執行時失敗,因為兩個 Worker 共用帳戶。獨立 Fixture 和事件等待可消除搶用資料的問題。

主要部分

  1. 01被測程式或行為
  2. 02可觀察證據
  3. 03覆蓋、失敗與復原

什麼時候用

記錄並重現失敗。若暫時隔離測試,要指定負責人並修正真正原因。

什麼時候不要用

避免盲目重試、永久隔離、無證據責怪環境,或把一次通過當成修好。

程式裡的名稱

repetition + seed + timing/order isolation

上線前要檢查

檢查環境與預先準備的測試資料。定義看得到的預期結果、失敗與邊界案例。也要定義隔離方式、固定輸入、查錯資訊與清理流程。設定執行時間預算、負責人與不穩定測試的處理規則。

可以直接複製的需求

預期成果:用 不穩定測試 (Flaky Test) 收集可重複驗證這項行為或品質風險的證據。 使用者情境:瀏覽器測試在平行執行時失敗,因為兩個 Worker 共用帳戶。獨立 Fixture 和事件等待可消除搶用資料的問題。 驗證方式:不穩定測試 (Flaky Test)。 適用理由:記錄並重現失敗。若暫時隔離測試,要指定負責人並修正真正原因。 不應使用的情況:避免盲目重試、永久隔離、無證據責怪環境,或把一次通過當成修好。 測試要求:說明要測的系統與環境。定義預先準備的測試資料(Fixture)、其他輸入,以及看得到的預期結果。加入預期失敗、邊界案例、容許值、隔離方式與清理流程。 測試維護:讓失敗原因容易查找,並控制隨機或會改變的輸入。指定負責人。測試速度與維護成本要符合發布前檢查的需要。 驗收條件:已知缺陷存在時測試會失敗,修正後通過。測試能在目標環境重複執行,提供可採取行動的證據,且不洩漏或改動無關資料。 證據與限制(證據邊界):沒有一份官方標準能管到全部內容。不同團隊、平台或框架的用法可能不同。 待確認:發布前必過的檢查、環境、測試資料、容許值、執行時間預算、負責人,以及不穩定測試的處理規則。

檢查這份需求

請 AI 程式助手檢查目前如何使用 不穩定測試 (Flaky Test)。 定義:不穩定測試會在程式沒變時忽好忽壞。常見原因有時間、順序、共用狀態、隨機值或外部系統。 正式環境檢查:檢查環境與預先準備的測試資料。定義看得到的預期結果、失敗與邊界案例。也要定義隔離方式、固定輸入、查錯資訊與清理流程。設定執行時間預算、負責人與不穩定測試的處理規則。 修改程式前,先列出看到的證據、缺口、嚴重程度,以及最小且安全的修正。

C
這個術語有多正式?

業界慣例

工作上常會用到這個術語。列出的來源可能說明用法或限制,但不會定義全部內容。

沒有一份官方標準能管到全部內容。不同團隊、平台或框架的用法可能不同。

適用範圍
只包含來源有說明的內容:正式名稱、定義、使用指南、避免事項
文件狀態
穩定
查證日期
2026-07-30

證據來源與適用範圍

正式來源 · International Software Testing Qualifications Board · 穩定 ISTQB Glossary 適用範圍: 正式名稱、定義、使用指南、避免事項 本頁用途: 提供背景,不是正式定義 來源涵蓋內容: 正式名稱, 定義, 使用指南, 避免事項

自行複製

瀏覽器無法自動複製。請選取下方文字,再自行複製。