LLM2D
CoverUp:有效的大覆盖面Python测试生成
CoverUp: Effective High Coverage Test Generation for Python
作者: Juan Altmayer Pizzorno, Emery D. Berger
发布日期: 5/12/2025
arXiv ID: oai:arXiv.org:2403.16218v4

摘要

arXiv:2403.16218v4 Announce Type: replace-cross 摘要:测试是软件开发中不可或缺的一部分。测试生成工具试图自动化原本需要大量人力的测试创建任务,但生成高覆盖率的测试依然具有挑战性。本文提出了一种名为CoverUp的新颖方法,用于驱动高覆盖率的Python回归测试生成。CoverUp结合了覆盖率分析、代码上下文和提示反馈,通过迭代引导LLM生成能够提高代码行覆盖率和分支覆盖率的测试。我们对源自开源Python项目的挑战性代码基准进行评估,并展示了CoverUp在提高覆盖率方面优于现有技术。与CodaMosa——一种结合搜索和LLM的测试生成器——相比,CoverUp每个模块的中位行覆盖率和分支覆盖率提高了80%(相比之下为47%)。与MuTAP——一种基于突变和LLM的测试生成器——相比,CoverUp的整体行覆盖率和分支覆盖率达到了89%(相比之下为77%)。此外,我们还证明了COVERUP的性能不仅来自于所使用的LLM,还来自于其各个组件的有效结合。