학술논문

Automated Repair of Java Programs with Random Search via Code Similarity
Document Type
Conference
Source
2021 IEEE 21st International Conference on Software Quality, Reliability and Security Companion (QRS-C) QRS-C Software Quality, Reliability and Security Companion (QRS-C), 2021 IEEE 21st International Conference on. :470-477 Dec, 2021
Subject
Computing and Processing
Java
Software maintenance
Codes
Filtering
Computer bugs
Software quality
Maintenance engineering
program repair
random search
test case prioritization
patch overfitted
Language
ISSN
2693-9371
Abstract
Automatic program repair is a cutting-edge research direction in software engineering in recent years. The existing program repair techniques based on genetic programming suffer from requiring verification of a large number of candidate patches, which consume a lot of computational resources. We instead propose Random search via Code Similarity based automate program Repair (RCSRepair). First, we use test filtering and test case prioritization techniques in fault localization to reduce and restructure test cases. Second, a combination of random search and code similarity is used to generate patches. Finally, overfitting detection is performed on the patches that pass the test cases to improve the quality of the patch. The experimental results show that our approach can successfully fix 54 bugs of 224 real-world bugs in Defects4J and has outperform the compared approaches.