Searching for Multi-Fault Programs in Defects4J
Gabin An, Juyeon Yoon, Shin Yoo

TL;DR
This paper identifies and compiles multiple-fault versions within the Defects4J dataset, creating a benchmark to facilitate research on debugging techniques for programs with coexisting faults.
Contribution
The authors systematically find and document multi-fault versions in Defects4J, extending it as a benchmark for multi-fault debugging research.
Findings
Over 95% of studied versions contain multiple faults.
Identified 2 to 24 faults in these versions.
Provides a new platform for multi-fault debugging research.
Abstract
Defects4J has enabled numerous software testing and debugging research work since its introduction. A large part of its contribution, and the resulting popularity, lies in the clear separation and distillation of the root cause of each individual test failure based on careful manual analysis, which in turn allowed researchers to easily study individual faults in isolation. However, in a realistic debugging scenario, multiple faults can coexist and affect test results collectively. Study of automated debugging techniques for these situations, such as failure clustering or fault localisation for multiple faults, would significantly benefit from a reliable benchmark of multiple, coexisting faults. We search for versions of Defects4J subjects that contain multiple faults, by iteratively transplanting fault-revealing test cases across Defects4J versions. Out of 326 studied versions of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Testing and Debugging Techniques · Software Reliability and Analysis Research · Software System Performance and Reliability
