Optimizing Case-Based Reasoning System for Functional Test Script Generation with Large Language Models
This work addresses the challenge of automating test script generation for software development, offering an incremental improvement by optimizing existing methods for specific production scenarios.
The authors tackled the problem of generating functional test scripts for software by proposing a case-based reasoning system optimized with a method called Re4, which improved retrieval and reuse through finetuning, achieving superior results in experiments on Huawei Datacom units and reducing repetitive generation issues.
In this work, we explore the potential of large language models (LLMs) for generating functional test scripts, which necessitates understanding the dynamically evolving code structure of the target software. To achieve this, we propose a case-based reasoning (CBR) system utilizing a 4R cycle (i.e., retrieve, reuse, revise, and retain), which maintains and leverages a case bank of test intent descriptions and corresponding test scripts to facilitate LLMs for test script generation. To improve user experience further, we introduce Re4, an optimization method for the CBR system, comprising reranking-based retrieval finetuning and reinforced reuse finetuning. Specifically, we first identify positive examples with high semantic and script similarity, providing reliable pseudo-labels for finetuning the retriever model without costly labeling. Then, we apply supervised finetuning, followed by a reinforcement learning finetuning stage, to align LLMs with our production scenarios, ensuring the faithful reuse of retrieved cases. Extensive experimental results on two product development units from Huawei Datacom demonstrate the superiority of the proposed CBR+Re4. Notably, we also show that the proposed Re4 method can help alleviate the repetitive generation issues with LLMs.