REACCEPT: Automated Co-evolution of Production and Test Code Based on Dynamic Validation and Large Language Models

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Chi, Jianlei, Wang, Xiaotian, Huang, Yuhan, Yu, Lechen, Cui, Di, Sun, Jianguo, Sun, Jun
Format: Preprint
Veröffentlicht: 2024
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866917840216391680
author Chi, Jianlei
Wang, Xiaotian
Huang, Yuhan
Yu, Lechen
Cui, Di
Sun, Jianguo
Sun, Jun
author_facet Chi, Jianlei
Wang, Xiaotian
Huang, Yuhan
Yu, Lechen
Cui, Di
Sun, Jianguo
Sun, Jun
contents Synchronizing production and test code, known as PT co-evolution, is critical for software quality in the software development lifecycle. Existing methods for automatic PT co-evolution either utilize predefined heuristic rules or rely on simple application of machine learning techniques. Due to the limitations of underlying techniques, existing methods either only partially automate PT co-evolution (e.g., only automate obsolete test code identification) or result in low accuracy. In this paper, we propose REACCEPT, a novel approach that leverages large language models and dynamic validation to fully automate PT co-evolution (i.e., capable of both identifying and updating obsolete test cases). REACCEPT relies on experience-based prompt template generation, dynamic validation, and retrieval-augmented generation techniques to accomplish automated PT co-evolution. To evaluate REACCEPT's effectiveness, we extensive experiments with a dataset of 537 Java projects and compared REACCEPT's performance with several state-of-the-art methods. Results show that REACCEPT achieved an update accuracy of 60.16% on correctly identified obsolete test code, surpassing the state-of-the-art technique CEPROT by 90%. This confirms that REACCEPT can effectively assist developers in maintaining test code, improving overall software quality and reducing maintenance effort.
format Preprint
id arxiv_https___arxiv_org_abs_2411_11033
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle REACCEPT: Automated Co-evolution of Production and Test Code Based on Dynamic Validation and Large Language Models
Chi, Jianlei
Wang, Xiaotian
Huang, Yuhan
Yu, Lechen
Cui, Di
Sun, Jianguo
Sun, Jun
Software Engineering
Synchronizing production and test code, known as PT co-evolution, is critical for software quality in the software development lifecycle. Existing methods for automatic PT co-evolution either utilize predefined heuristic rules or rely on simple application of machine learning techniques. Due to the limitations of underlying techniques, existing methods either only partially automate PT co-evolution (e.g., only automate obsolete test code identification) or result in low accuracy. In this paper, we propose REACCEPT, a novel approach that leverages large language models and dynamic validation to fully automate PT co-evolution (i.e., capable of both identifying and updating obsolete test cases). REACCEPT relies on experience-based prompt template generation, dynamic validation, and retrieval-augmented generation techniques to accomplish automated PT co-evolution. To evaluate REACCEPT's effectiveness, we extensive experiments with a dataset of 537 Java projects and compared REACCEPT's performance with several state-of-the-art methods. Results show that REACCEPT achieved an update accuracy of 60.16% on correctly identified obsolete test code, surpassing the state-of-the-art technique CEPROT by 90%. This confirms that REACCEPT can effectively assist developers in maintaining test code, improving overall software quality and reducing maintenance effort.
title REACCEPT: Automated Co-evolution of Production and Test Code Based on Dynamic Validation and Large Language Models
topic Software Engineering
url https://arxiv.org/abs/2411.11033