work-blog/articles/drafts/on-flakiness.md

6 lines
757 B
Markdown
Raw Normal View History

On Flakiness — or, Heraclitus and the Non-Deterministic Test. You have direct pain here from the Appium Mac2 multi-monitor work. A flaky test is the software-testing expression of Heraclitus' river[1] — you can never step into the same test run twice. But a flaky test isn't nothing; it's a signal that one of your background assumptions about determinism is wrong. The usual move is to quarantine or delete; the philosophical move is to ask what the flakiness is telling you about your model of the system. Martin Fowler's "Eradicating Non-Determinism in Tests"[2] is the standard reference but deserves to be argued with rather than cited.
[1] https://plato.stanford.edu/entries/heraclitus/
[2] https://martinfowler.com/articles/nonDeterminism.html