- 简介代码生成利用大语言模型(LLMs)进行了广泛研究并取得了显著进展。作为代码生成的补充方面,测试用例生成对于确保代码的质量和可靠性至关重要。然而,使用LLMs作为测试用例生成器的研究远远不足。目前,这方面的研究主要集中在利用LLMs生成的测试用例来增强代码生成的能力,而LLMs单独用于测试用例生成的性能尚未全面研究。为了弥补这一空白,我们进行了广泛的实验研究,以研究LLMs生成高质量测试用例的能力。我们发现随着问题难度的增加,最先进的LLMs在生成正确测试用例方面遇到了困难,这主要是由于它们在计算和推理方面的固有限制。为了缓解这个问题,我们进一步提出了一个名为TestChain的多代理框架,它将测试输入和测试输出的生成分离开来。值得注意的是,TestChain使用ReAct格式的对话链,使LLMs能够与Python解释器进行交互,以提供更准确的测试输出。我们的结果表明,TestChain的性能远远优于基线。特别是在测试用例准确性方面,使用GPT-4作为骨干的TestChain在LeetCode-hard数据集上比基线提高了13.84%。
-
- 图表
- 解决问题研究LLMs在测试用例生成方面的表现如何,提出一种名为TestChain的多智能体框架,用于生成高质量的测试用例。
- 关键思路提出了一种基于ReAct格式的对话链,使LLMs能够与Python解释器交互,从而提供更准确的测试输出。TestChain将测试输入和测试输出的生成分开,以缓解LLMs在计算和推理方面的局限性。
- 其它亮点实验结果表明,TestChain在LeetCode-hard数据集上的表现比基准测试要好得多,使用GPT-4作为骨干网络时,测试用例的准确性提高了13.84%。
- 当前的研究主要集中在使用LLMs生成测试用例的辅助功能,而本文则重点探讨了LLMs在测试用例生成方面的表现。
NEW
提问交流
提交问题,平台邀请作者,轻松获得权威解答~
向作者提问

提问交流