TESTEVAL:用大模型生成测试用例的新标杆
2026/6/18 14:14:34 网站建设 项目流程

“ 在软件开发中,测试是保证代码质量的核心环节。生成覆盖率高、符合预期逻辑的测试用例,既能发现潜在bug,也能提升软件可靠性。然而,传统测试用例生成方法不仅耗时,还需要复杂分析,自动化难度大。

近年来,LLM在代码理解与生成方面表现出色,但它们在自动生成测试用例、覆盖特定代码路径上的能力尚不清楚。TESTEVAL的出现正是为了系统评估LLMs在这一关键任务上的性能。 ”

  • 📄论文标题:TESTEVAL: Benchmarking Large Language Models for Test Case Generation

  • 📅发表时间: Findings of the Association for Computational Linguistics:NAACL,2025

  • 🏫作者单位: 阿尔伯塔大学,东京大学等

  • 💡开源代码:

    https://github.com/LLM4SoftwareTesting/TestEval

01—方法介绍

论文提出了 TESTEVAL 基准框架,通过三个任务评估 LLM 的测试能力:

① 整体覆盖

生成尽可能覆盖程序大部分语句的测试用例;

② 目标行/分支覆盖

生成能覆盖特定语句或分支的测试用例;

③ 目标路径覆盖

生成能执行指定路径的测试用例。

图 1. TESTEVAL整体框架

小结:TESTEVAL 强调 LLM 理解程序逻辑的能力,而不仅仅是生成可运行代码。

02—关键机制

  1. 全新测试用例基准,首次系统评估 LLMs 在覆盖率导向的测试用例生成能力;
  2. 多任务设计,兼顾整体覆盖、特定分支及路径覆盖;
  3. 多模型对比,涵盖 17 个商业与开源 LLM,展示差异化能力;
  4. 真实控制流复杂度:数据集平均环路复杂度 13.35,高于许多现有数据集。

模块

设计思路

作用

任务设计

整体覆盖、特定分支/路径覆盖

考察 LLM 的逻辑理解与测试用例生成能力

数据集构建

210 个 LeetCode Python 程序

提供可控、复杂度适中的测试环境

LLM 评估

17 个流行商业及开源模型

系统对比 LLM 在不同覆盖任务上的性能

指标计算

语法、执行、断言正确性及覆盖率

保证评价的全面性与科学性

小结:ESTEVAL 不只是生成测试用例,更是考察 LLM 对程序执行路径和分支逻辑的理解。

03—实验结果

为了构建基准数据集,首先收集了LeetCode(https://github.com/walkccc/LeetCode)的解题程序。LeetCode是一个在线平台,用于评估程序员的编程能力,因为它对每个编程任务都有明确的任务描述和输入限制。作者首先筛选出截至2024年4月的所有公开任务。随后,从GitHub仓库1中收集了每个任务的Python解决方案,共收集了3123个测试程序。

表1显示了整体覆盖任务的评估结果。实验中对每个模型进行20轮查询(N=20),为每个待测程序生成测试用例(每轮一个测试用例)。进一步使用cov@k来衡量每个大型语言模型(LLM)生成的测试用例的多样性。

表1. 整体覆盖任务的结果

表2和表3分别展示了目标行覆盖率和分支覆盖率的评估结果。对于每个目标LLM,还通过排除文本提示中关于目标行/分支的信息来设置基线。对于每个测试程序,复用为整体覆盖任务生成的首个测试用例,并测量其在目标行/分支上的覆盖准确性。

表2. 目标行覆盖结果

表3. 目标分支覆盖结果

图4展示了目标路径覆盖任务的结果。实验采用了与目标行/分支覆盖任务中类似的基线方法,即在文本提示中排除了目标路径。

表4 目标路径覆盖结果

小结:TESTEVAL是一个新型基准数据集,目标覆盖任务能够评估LLM在理解复杂程序逻辑和执行路径方面的能力,以及根据测试者的意图生成测试用例的能力。实验发现,尽管LLM通过生成多样化的测试用例可以实现较高的整体覆盖率,但要生成覆盖特定元素的测试用例仍然具有挑战性。

📌 总结

TESTEVAL 为 LLM 测试用例生成提供了系统评价框架与公开数据集,使研究者能够科学衡量模型能力。未来,提升 LLM 对程序执行路径和逻辑的理解,可能是突破自动化测试的关键。

📣 欢迎留言讨论

  • 你认为 LLMs 是否能够在不依赖传统测试工具的情况下,可靠地生成高覆盖率测试用例?

  • 对于工业级项目,覆盖特定路径的自动化生成有多大可行性?

📌 点赞 + 收藏 + 分享,你的支持,是我们持续解析高水平软件安全论文的最大动力!

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询