How good does a Defect Predictor need to be to guide Search-Based Software Testing?
Anjana Perera (1), Burak Turhan (2), Aldeida Aleti (1), Marcel B\"ohme, (1, 3) ((1) Faculty of Information Technology, Monash University,, Melbourne, Australia, (2) Faculty of Information Technology, Electrical, Engineering, University of Oulu, Oulu, Finland

TL;DR
This study investigates how the accuracy of defect predictors, especially recall, influences the effectiveness of search-based software testing in bug detection, highlighting the importance of high recall for guiding testing efforts.
Contribution
It provides empirical evidence on the impact of defect predictor recall and precision on SBST bug detection, offering practical recommendations for defect predictor design.
Findings
Recall significantly affects bug detection effectiveness.
Precision has a negligible practical impact.
Increasing recall improves bug detection, especially when maintaining high precision.
Abstract
Defect predictors, static bug detectors and humans inspecting the code can locate the parts of the program that are buggy before they are discovered through testing. Automated test generators such as search-based software testing (SBST) techniques can use this information to direct their search for test cases to likely buggy code, thus speeding up the process of detecting existing bugs. However, often the predictions given by these tools or humans are imprecise, which can misguide the SBST technique and may deteriorate its performance. In this paper, we study the impact of imprecision in defect prediction on the bug detection effectiveness of SBST. Our study finds that the recall of the defect predictor, i.e., the probability of correctly identifying buggy code, has a significant impact on bug detection effectiveness of SBST with a large effect size. On the other hand, the effect 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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Testing and Debugging Techniques · Software Reliability and Analysis Research
