TestTailor:利用大语言模型通过路径近似测试生成高覆盖率的测试用例
《Proceedings of the ACM on Software Engineering》:TestTailor: Generating High-Coverage Tests via Path-Proximal Tests with LLMs
【字体:
大
中
小
】
时间:2026年07月06日
来源:Proceedings of the ACM on Software Engineering
编辑推荐:
摘要AI总结要查看此由AI生成的总结,您需要拥有高级访问权限。了解更多登录摘要摘要自动化单元测试对于确保软件质量至关重要。通过自动化单元测试生成来实现高代码覆盖率仍然具有挑战性,尤其是对于那些由复杂或深度嵌套的条件所保护的难以覆盖的分支。传统的基于搜索的方法往往会在性能上达到瓶颈
要查看此由AI生成的总结,您需要拥有高级访问权限。
摘要
摘要
自动化单元测试对于确保软件质量至关重要。通过自动化单元测试生成来实现高代码覆盖率仍然具有挑战性,尤其是对于那些由复杂或深度嵌套的条件所保护的难以覆盖的分支。传统的基于搜索的方法往往会在性能上达到瓶颈,而最近的基于大语言模型的技术所提供的提示通常较为粗糙,迫使模型自行猜测如何覆盖未被检测到的部分。为了解决这些限制,我们提出了TestTailor,这是一种神经符号框架,它利用精细的、以路径为导向的指导来引导基于大语言模型的测试生成。其核心思路是利用与目标未覆盖路径执行路径极为相似的现有测试用例,并分析它们之间的差异点。通过将这种分析与符号约束相结合(即利用符号执行从目标未覆盖路径中收集的约束),TestTailor能够生成可操作的路径指导,并将其编码成简洁的提示,告诉大语言模型不仅哪些部分尚未被覆盖,还告知其如何到达这些部分。我们在广泛使用的包含486个Python模块的CODAMOSA基准测试平台上对TestTailor进行了评估。结果表明,与最佳基线CoverUp相比,TestTailor在语句覆盖率和分支覆盖率方面平均分别提高了5.01%和4.17%,而且其API使用成本仅为CoverUp的约40%。在与基于混合大语言模型和搜索技术的CODAMOSA相比时,TestTailor在语句覆盖率和分支覆盖率方面的提升幅度更大,分别达到了12.23%和12.54%。此外,TestTailor的覆盖率精确度也最高(为85.2%,而CoverUp为75.3%,TELPA为63.8%),并且在不同的主流大语言模型架构上均表现出良好的稳定性。这些结果表明,TestTailor能够将模糊的覆盖率目标转化为精确的路径级指令,从而使大语言模型更高效、更准确地生成高覆盖率的测试套件。
AI总结
AI生成的总结(实验性)
此总结是通过自动化工具生成的,并非由文章作者撰写或审核。它旨在帮助读者发现相关内容、评估文章的实用性,以及帮助来自相关研究领域的读者理解该文章的内容。它是对作者提供的摘要的补充,而作者提供的摘要仍是文章的主要总结内容。完整文章才是最具权威性的版本。点击此处了解更多。
点击此处,可以对这个总结的准确性、清晰度及实用性发表意见。您的反馈将有助于进一步优化未来的总结版本。
要查看此由AI生成的通俗语言总结,您需要拥有高级访问权限。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号