@inproceedings{3baec85342654ae39a6fede6fe6de6c1,
title = "Transforming Test Suites into Croissants",
abstract = "Software developers often rely on regression testing to ensure that recent changes made to the source code do not introduce bugs. Flaky tests, which non-deterministically pass or fail regardless of any change to the code, can negatively impact the effectiveness of the regression testing. While state-of-the-art is advancing the techniques for test-flakiness detection and mitigation, the community is missing a systematic approach for generating high-quality benchmarks of flaky tests to compare the effectiveness of such techniques. Inspired by the power of mutation testing in evaluating the fault-detection ability of tests, this paper proposes Croissant, a framework for injecting flakiness into the test suites to assess the effectiveness of test-flakiness detection tools in finding these tests. Croissant implements 18 flakiness-inducing mutation operators. We designed these operators to allow controlling the non-determinism involved in flakiness, i.e., making many mutants deterministically pass or fail to observe flaky behavior. Our extensive empirical evaluation of Croissant on the test suites of 15 real-world projects confirms the ability of designed mutation operators to generate high-quality mutants, and their effectiveness in challenging test-flakiness detection tools in revealing flaky tests.",
keywords = "Fault Injection, Mutation Testing, Software Testing, Test Flakiness",
author = "Yang Chen and Alperen Yildiz and Darko Marinov and Reyhaneh Jabbarvand",
note = "This work was partially supported by NSF grants CCF-1763788, CCF-1956374, and CCF-2238045, and grants from IBM and C3.ai. We also acknowledge support for research on flaky tests from Google and Meta.; 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2023 ; Conference date: 17-07-2023 Through 21-07-2023",
year = "2023",
month = jul,
day = "12",
doi = "10.1145/3597926.3598119",
language = "English (US)",
series = "ISSTA 2023 - Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis",
publisher = "Association for Computing Machinery",
pages = "1080--1092",
editor = "Rene Just and Gordon Fraser",
booktitle = "ISSTA 2023 - Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis",
address = "United States",
}