Modification point aware test prioritization and sampling to improve patch validation in automatic program repair

Yazhini Venugopal, Phung Quang-Ngoc, Lee Eunseok

Research output: Contribution to journalArticlepeer-review

6 Scopus citations

Abstract

Recently, Automatic Program Repair (APR) has shown a high capability of repairing software bugs automatically. In general, most of the APR techniques require test suites to validate automatically generated patches. However, the test suites used for patch validation might contain thousands of test cases. Running these whole test suites to validate every program variant makes the validation process not only time-consuming but also expensive. To mitigate this issue and to enhance the patch validation in APR, we introduce (1) MPTPS (Modification Point-aware Test Prioritization and Sampling), which iteratively records test execution. Based on the failed test information, it performs test prioritization, then sampling to reduce the test execution time by moving forward the test cases that are most likely to fail in the test suite; and (2) a new fitness function that refines the existing one to improve repair efficiency. We implemented our MPPEngine approach in the Astor workspace by extending jGenProg. And the experiments on the Defects4j benchmark against jGenProg show that, on average, jGenProg consumes 79.27 s to validate one program variant, where MPPEngine takes only 33.70 s for results in 57.50% of validation time reduction. Also, MPPEngine outperforms jGenProg by finding patches for six more bugs than jGenProg.

Original languageEnglish
Article number1593
JournalApplied Sciences (Switzerland)
Volume10
Issue number5
DOIs
StatePublished - 1 Mar 2020

Keywords

  • Automatic program repair (APR)
  • Fitness function
  • Patch assessment
  • Patch validation
  • Test prioritization
  • Test sampling

Fingerprint

Dive into the research topics of 'Modification point aware test prioritization and sampling to improve patch validation in automatic program repair'. Together they form a unique fingerprint.

Cite this