Constructing a Comprehensive Dataset of Reproducible Flaky Tests

Regression testing, an important part of software development, is essential for ensuring that new software changes don't break existing features and ensuring software reliability. This process relies on the assumption that test results are consistent: the same test should always produce the same outcome for the same version of code. However, flaky tests, which non deterministically pass or fail, reduce software reliability. These inconsistent tests hinder the ability to accurately identify software regression issues and slow down development. While datasets of flaky tests exist, it can be difficult to reproduce these tests because of their inherent nondeterminism and existing datasets mostly contains two categories of flaky tests. To address this problem, we aim to create a more comprehensive dataset of reproducible flaky tests including other categories as well. To address this, we study the issue reports and flaky test fixes from various open-source projects to create a script that can reliably reproduce some flaky test failures as described in these reports. Our dataset includes flaky test categories hardly found in prior datasets and helps contribute to a deeper understanding of these test failures. By creating this dataset, we hope to facilitate the development of advanced techniques for flaky test detection and resolution, ultimately improving software reliability.

Institutions

Publication Details

Journal
George Mason University
Published
2024-10-11
DOI
https://doi.org/10.13021/jssr2024.4243
Primary Topic
Software Testing and Debugging Techniques
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Constructing a Comprehensive Dataset of Reproducible Flaky Tests

George Mason University
Software Testing and Debugging Techniques
article

Constructing a Comprehensive Dataset of Reproducible Flaky Tests

article en

Abstract

Regression testing, an important part of software development, is essential for ensuring that new software changes don't break existing features and ensuring software reliability. This process relies on the assumption that test results are consistent: the same test should always produce the same outcome for the same version of code. However, flaky tests, which non deterministically pass or fail, reduce software reliability. These inconsistent tests hinder the ability to accurately identify software regression issues and slow down development. While datasets of flaky tests exist, it can be difficult to reproduce these tests because of their inherent nondeterminism and existing datasets mostly contains two categories of flaky tests. To address this problem, we aim to create a more comprehensive dataset of reproducible flaky tests including other categories as well. To address this, we study the issue reports and flaky test fixes from various open-source projects to create a script that can reliably reproduce some flaky test failures as described in these reports. Our dataset includes flaky test categories hardly found in prior datasets and helps contribute to a deeper understanding of these test failures. By creating this dataset, we hope to facilitate the development of advanced techniques for flaky test detection and resolution, ultimately improving software reliability.

George Mason University
Infosys (India) (IN), George Mason University (US), University of Barishal (BD), The University of Texas at Austin (US)
Industry, innovation and infrastructure
Openalex Percentile: Top 44%
Software Testing and Debugging Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.