z-logo
Premium
Root causing, detecting, and fixing flaky tests: State of the art and future roadmap
Author(s) -
Zolfaghari Behrouz,
Parizi Reza M.,
Srivastava Gautam,
Hailemariam Yoseph
Publication year - 2021
Publication title -
software: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.437
H-Index - 70
eISSN - 1097-024X
pISSN - 0038-0644
DOI - 10.1002/spe.2929
Subject(s) - pace , root cause , software deployment , test (biology) , field (mathematics) , computer science , root (linguistics) , engineering , data science , software , engineering management , software engineering , operations management , paleontology , mathematics , geodesy , pure mathematics , biology , programming language , geography , linguistics , philosophy
A flaky test is a test that may lead to different results in different runs on a single code under test without any change in the test code. Test flakiness is a noxious phenomenon that slows down software deployment, and increases the expenditures in a broad spectrum of platforms such as software‐defined networks and Internet of Things environments. Industrial institutes and labs have conducted a whole lot of research projects aiming at tackling this problem. Although this issue has been receiving more attention from academia in recent years, the academic research community is still behind the industry in this area. A systematic review and trend analysis on the existing approaches for detecting and root causing flaky tests can pave the way for future research on this topic. This can help academia keep pace with industrial advancements and even lead the research in this field. This article first presents a comprehensive review of recent achievements of the industry as well as academia regarding the detection and mitigation of flaky tests. In the next step, recent trends in this line of research are analyzed and a roadmap is established for future research.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here