Quality Evaluation Method of Automatic Software Repair Using Syntax Distance Metrics
Author:
Dong Yukun1ORCID, Tang Daolong1, Cheng Xiaotong1, Yang Yufei1
Affiliation:
1. College of Computer Science and Technology, China University of Petroleum, Qingdao 266580, China
Abstract
In recent years, test-based automatic program repair has attracted widespread attention. However, the test suites in practice are not perfect ways to guarantee the correctness of patches generated by repair tools, and weak test suites lead to a large number of incorrect patches produced by the existing repair tool. To reduce the number of incorrect patches generated by repair tools, we propose a patch quality evaluation method based on syntax distance metrics, which measures the syntax distance of patches through four evaluation features—variable, expression, structure, and repair location. By fusing the distance values of the four features, the quality of a patch can be evaluated. Our method evaluates 368 patches from multiple famous repair tools, such as jKali, Nopol, SimFix, DynaMoth, and CapGen; 95% of the correct patches were ranked in the top one of the plausible patches for each defect, which indicates our method can find high-quality patches.
Funder
Natural Foundation of Shandong Province Fundamental Research Funds for the Central Universities Major Scientific and Technological Projects of CNPC
Subject
Physics and Astronomy (miscellaneous),General Mathematics,Chemistry (miscellaneous),Computer Science (miscellaneous)
Reference38 articles.
1. Nilizadeh, A. (2022, January 4–14). Automated Program Repair and Test Overfitting: Measurements and Approaches using Formal Methods. Proceedings of the 2022 IEEE Conference on Software Testing, Verification and Validation, Valencia, Spain. 2. Gao, X., Wang, B., Duck, G.J., Ji, R., Xiong, Y., and Roychoudhury, A. (2021). ACM Transactions on Software Engineering and Methodology, Association for Computing Machinery. 3. Yi, J., and Ismayilzada, E. (2022). Speeding up constraint-based program repair using a search-based technique. Inf. Softw. Technol., 146. 4. Xiong, Y., Liu, X., Zeng, M., Lu, Z., and Gang, H. (June, January 27). Identifying patch correctness in test-based program repair. Proceedings of the 40th International Conference on Software Engineering, Gothenburg, Sweden. 5. Restore: Retrospective Fault Localization Enhancing Automated Program Repair;Xu;IEEE Trans. Softw. Eng.,2022
|
|