Test-based Patch Clustering for Automatically-Generated Patches Assessment
Matias Martinez, Maria Kechagia, Anjana Perera, Justyna Petke,, Federica Sarro, Aldeida Aleti

TL;DR
This paper introduces xTestCluster, a lightweight test-based clustering method that groups patches by their dynamic behavior to reduce the review effort for automated program repair patches.
Contribution
The paper presents a novel clustering approach that uses execution information from new test cases to group patches, aiding developers in efficient patch assessment.
Findings
Reduces the number of patches to review by median 50%
Clusters patches based on failure on generated test cases
Saves significant time in patch validation process
Abstract
Previous studies have shown that Automated Program Repair (APR) techniques suffer from the overfitting problem. Overfitting happens when a patch is run and the test suite does not reveal any error, but the patch actually does not fix the underlying bug or it introduces a new defect that is not covered by the test suite. Therefore, the patches generated by apr tools need to be validated by human programmers, which can be very costly, and prevents apr tool adoption in practice. Our work aims to minimize the number of plausible patches that programmers have to review, thereby reducing the time required to find a correct patch. We introduce a novel light-weight test-based patch clustering approach called xTestCluster, which clusters patches based on their dynamic behavior. xTestCluster is applied after the patch generation phase in order to analyze the generated patches from one or more…
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 Testing and Debugging Techniques · Software Engineering Research · Software System Performance and Reliability
