Better Automatic Program Repair by Using Bug Reports and Tests Together
Manish Motwani, Yuriy Brun

TL;DR
This paper demonstrates that combining bug reports and test data improves fault localization, leading to higher-quality automated program repairs, with new techniques like Blues and RAFL outperforming existing methods.
Contribution
Introduces Blues and RAFL, novel fault localization techniques that combine bug reports and test data, significantly enhancing repair accuracy without requiring training data.
Findings
Combining bug reports and test data improves repair quality.
SBIR outperforms individual fault localization techniques.
Modified repair tools show increased correct repairs with SBIR.
Abstract
Automated program repair is already deployed in industry, but concerns remain about repair quality. Recent research has shown that one of the main reasons repair tools produce incorrect (but seemingly correct) patches is imperfect fault localization (FL). This paper demonstrates that combining information from natural-language bug reports and test executions when localizing faults can have a significant positive impact on repair quality. For example, existing repair tools with such FL are able to correctly repair 7 defects in the Defects4J benchmark that no prior tools have repaired correctly. We develop, Blues, the first information-retrieval-based, statement-level FL technique that requires no training data. We further develop RAFL, the first unsupervised method for combining multiple FL techniques, which outperforms a supervised method. Using RAFL, we create SBIR by combining Blues…
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
