Understanding Flaky Tests: The Developer's Perspective
Not on the map. Why?
Abstract (arXiv)
Flaky tests are software tests that exhibit a seemingly random outcome (pass or fail) when run against the same, identical code. Previous work has examined fixes to flaky tests and has proposed automated solutions to locate as well as fix flaky tests--we complement it by examining the perceptions of software developers about the nature, relevance, and challenges of this phenomenon. We asked 21 professional developers to classify 200 flaky tests they previously fixed, in terms of the nature of the flakiness, the origin of the flakiness, and the fixing effort. We complement this analysis with information about the fixing strategy. Subsequently, we conducted an online survey with 121 developers with a median industrial programming experience of five years. Our research shows that: The flakiness is due to several different causes, four of which have never been reported before, despite being the most costly to fix; flakiness is perceived as significant by the vast majority of developers, regardless of their team's size and project's domain, and it can have effects on resource allocation, scheduling, and the perceived reliability of the test suite; and the challenges developers report to face regard mostly the reproduction of the flaky behavior and the identification of the cause for the flakiness. Data and materials [https://doi.org/10.5281/zenodo.3265785].
Key facts. Cited by 8 papers in the map (data through 7 Oct 2026). First posted on arXiv 2 Jul 2019.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 3; 2022: 0; 2023: 3; 2024: 2.
8 papers.
- 2023Large Language Models for Software Engineering: A Systematic Literature Reviewcited by 389
- 2024PeaTMOSS: A Dataset and Initial Analysis of Pre-Trained Models in Open-Source Softwarecited by 9
- 2023FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categories and Test Code Repaircited by 6
- 2021What is the Vocabulary of Flaky Tests? An Extended Replicationcited by 3
- 2023PeaTMOSS: Mining Pre-Trained Models in Open-Source Softwarecited by 1
- 2021On the use of test smells for prediction of flaky testscited by 0
- 2021Automated Support for Unit Test Generation: A Tutorial Book Chaptercited by 0
- 2024FlaKat: A Machine Learning-Based Categorization Framework for Flaky Testscited by 0
- 2024FlaKat: A Machine Learning-Based Categorization Framework for Flaky Tests1 Mar 2024
- 2024PeaTMOSS: A Dataset and Initial Analysis of Pre-Trained Models in Open-Source Software1 Feb 2024
- 2023PeaTMOSS: Mining Pre-Trained Models in Open-Source Software5 Oct 2023
- 2023Large Language Models for Software Engineering: A Systematic Literature Review21 Aug 2023
- 2023FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categories and Test Code Repair21 Jun 2023
- 2021Automated Support for Unit Test Generation: A Tutorial Book Chapter26 Oct 2021
- 2021On the use of test smells for prediction of flaky tests26 Aug 2021
- 2021What is the Vocabulary of Flaky Tests? An Extended Replication23 Mar 2021