Flaky Test
Test instabile
Un Flaky Test può avere successo o fallire senza modifiche al codice. Spesso la causa sono tempistiche, ordine, stato condiviso, casualità o sistemi esterni.
Un altro esempio
Un test del browser fallisce in parallelo perché due worker condividono lo stesso account. Fixture unici e attesa degli eventi rimuovono la competizione.
Parti principali
- 01Code or behavior under test
- 02Observable evidence
- 03Coverage, failure, and recovery
Usalo quando
Registra e ripeti il fallimento. Se bloccato brevemente, assegna un responsabile e correggi la causa del cambiamento.
Non usarlo quando
Evita ripetizioni cieche, messi in quarantena per sempre, colpe non supportate e il trattare una riesecuzione verde come una soluzione.
Nome usato nel codice
repetition + seed + timing/order isolation Prima di spedire
Check the environment and prepared test data (fixture). Define a result you can observe, failure and edge cases, isolation, stable inputs, useful error details, and cleanup. Set a time budget, owner, and flaky-test rule.
Outcome: Complete the task with Test instabile (Flaky Test). User context: Un test del browser fallisce in parallelo perché due worker condividono lo stesso account. Fixture unici e attesa degli eventi rimuovono la competizione. Validation approach: Test instabile (Flaky Test). Why it fits: Registra e ripeti il fallimento. Se bloccato brevemente, assegna un responsabile e correggi la causa del cambiamento. Do not use it when: Evita ripetizioni cieche, messi in quarantena per sempre, colpe non supportate e il trattare una riesecuzione verde come una soluzione. Test requirements: Name the system and test environment. Define prepared test data, other inputs, and the result you can observe. Include failure and edge cases, allowed error, isolation, and cleanup. Test operations: Make failures easy to diagnose. Control random or changing inputs. Name an owner. Keep the test fast and simple enough for its release gate. Acceptance criteria: The test fails for the known bug and passes after the fix. It repeats in the target environment, gives useful evidence, and does not expose or change unrelated data. Evidence and limits (evidence boundary): Nessun singolo standard ufficiale controlla l'intero termine. Il suo significato può cambiare tra team, piattaforme o framework. Unknowns to confirm: Release gate, environment, prepared test data, allowed error, time budget, owner, and flaky-test rule.
Controlla questa richiesta
Review how Test instabile (Flaky Test) is used now. Definition: Un Flaky Test può avere successo o fallire senza modifiche al codice. Spesso la causa sono tempistiche, ordine, stato condiviso, casualità o sistemi esterni. Release checks: Check the environment and prepared test data (fixture). Define a result you can observe, failure and edge cases, isolation, stable inputs, useful error details, and cleanup. Set a time budget, owner, and flaky-test rule. Before changing code, list the evidence, gaps, severity, and the smallest safe fix.