TL;DR
This paper investigates the overfitting problem in test suite based program repair and proposes an approach called UnsatGuided that uses automatic test generation to improve repair quality, showing effectiveness in reducing regression introduction.
Contribution
The paper classifies overfitting in program repair and introduces UnsatGuided, a novel method that leverages automatic test generation to mitigate overfitting issues in synthesis-based repair techniques.
Findings
Automatic test generation effectively reduces regression introduction overfitting.
UnsatGuided has minimal impact on alleviating incomplete fixing due to oracle problems.
The approach is empirically validated on 224 bugs from the Defects4J dataset.
Abstract
Among the many different kinds of program repair techniques, one widely studied family of techniques is called test suite based repair. However, test suites are in essence input-output specifications and are thus typically inadequate for completely specifying the expected behavior of the program under repair. Consequently, the patches generated by test suite based repair techniques can just overfit to the used test suite, and fail to generalize to other tests. We deeply analyze the overfitting problem in program repair and give a classification of this problem. This classification will help the community to better understand and design techniques to defeat the overfitting problem. We further propose and evaluate an approach called UnsatGuided, which aims to alleviate the overfitting problem for synthesis-based repair techniques with automatic test case generation. The approach uses…
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.
