一句话:检验 C 程序修复中的反模式是否存在于 Java 修复工具,并将反模式集成到 jGenProg2 以过滤补丁、加速修复。
已有研究在 C 程序的自动修复中发现了若干常见反模式,但尚不清楚这些问题是否同样存在于 Java 自动程序修复中。本文对 Java 自动修复工具生成的 plausible 补丁进行人工检查,识别其中的反模式,并将其集成到 Java 修复工具 jGenProg2 中。作者在 Defects4J 基准上评估该集成方案,共涉及 14 个缺陷。结果显示,平均修复时间降低 22.6%,生成的 plausible 补丁数量从 67 个减少到 29 个。该研究为未来 Java 自动修复工具应用反模式提供了有效性证据。
Prior study has identified common anti-patterns in automated repair for C programs. In this work, we study if the same problems exist in Java programs. We performed a manual inspection on the plausible patches generated by Java automated repair tools. We integrated anti-patterns in jGenProg2 and evaluated on Defects4J benchmark. The result shows that the average repair time is reduced by 22.6 % and the number of generated plausible patches is reduced from 67 to 29 for 14 bugs in total. Our study provided evidence about the effectiveness of applying anti-patterns in future Java automated repair tools.
DOI 原文 ·
@inproceedings{paperbot5903,
title = {Anti-patterns for Java automated program repair tools},
author = {Yi Wu},
booktitle = {ASE},
year = {2020},
doi = {10.1145/3324884.3418919}
}