AI 快讯 编译自 marktechpost #模型发布#工具评测#开源

微软开源 code-testing-generator:多语言单元测试 Agent 任务完成率 92.1%,超越 Copilot

微软开源 code-testing-generator,一个基于 Research-Plan-Implement 管道的多语言单元测试 Agent,在内部基准上任务完成率达 92.1%,优于 GitHub Copilot 的 78.9%。本文解析其工作原理、基准数据,并探讨对中文开发者的实用价值与替代方案。

编译发布 2026/08/07 原文发布 2026/08/07

一句话看懂

微软开源 code-testing-generator,一个能自动写单元测试并验证的多语言 Agent,任务完成率 92.1%,比同模型下的 GitHub Copilot 高出 13 个百分点。

详细发生了什么

微软在 MIT 许可的 dotnet/skills 仓库中开源了 code-testing-generator,这是一个多语言单元测试 Agent,通过 dotnet-test 插件分发。它的核心创新在于:写任何代码之前,先读取整个仓库,检测语言、测试框架、现有约定以及真实的构建和测试命令,然后通过 Research-Plan-Implement(RPI)管道来规划、编写、运行和验证测试。

在微软内部的 152 任务基准测试中,code-testing-generator 完成了 140 个任务(92.1%),而相同模型和提示下的 GitHub Copilot 只完成了 120 个(78.9%),失败率降低了 63%。增益主要集中在模糊提示和 diff 定向请求上:在 89 个模糊提示中,Agent 解决了 79 个(88.8%),而 Copilot 只解决了 59 个(66.3%);在 15 个 diff 定向任务中,Agent 全部通过,Copilot 一个未过。值得注意的是,Agent 生成的测试数量少了 2.3%(6963 vs 7129),但行覆盖率几乎相同(72.4% vs 72.2%),平均任务时间也快了 5.5%(359 秒 vs 380 秒)。

Agent 采用三种策略之一:直接写入并验证、单次运行或迭代循环。它从不修改生产代码,并避免调用外部 URL、绑定端口或依赖计时的测试。在报告完成前,它会运行五项检查,包括轻量级变异测试、断言强度检查、场景映射、全量构建和测试套件运行,以及确认仓库自身的测试命令能发现新测试。

中文圈视角

对中文开发者来说,这个工具的价值和门槛并存。首先,它是开源的,MIT 许可,可以直接从 GitHub 获取,但国内访问 GitHub 可能不稳定,需要梯子或镜像。其次,它作为 Agent 定义运行在现有编码 Agent 中,代码留在本地,这符合国内对数据出境的合规要求,尤其适合金融、医疗等监管严格的行业。

与国产工具相比,目前国内类似的开源测试生成工具较少,但像通义灵码、CodeGeeX 等也提供测试生成功能,不过它们更多是闭源或云端服务。code-testing-generator 的本地化运行和仓库感知能力是差异化优势,但需要用户具备一定的技术能力来配置。对于中文用户,一个潜在盲点是:Agent 对中文注释和文档的支持尚不明确,可能需要额外适配。

几条值得记住的细节

  • 开源地址:dotnet/skills 仓库,MIT 许可,包含 dotnet-test 插件。
  • 基准数据:152 任务中完成 140 个(92.1%),Copilot 完成 120 个(78.9%)。
  • 在 .NET 任务上,Claude Opus 4.8 配合 Agent 达到 43/45,GPT-5.5 达到 41/45。
  • 平均任务时间 359 秒,比 Copilot 快 5.5%,token 使用量高 3.2%。
  • 三种策略:直接写入、单次运行、迭代循环,适用于不同规模。

一句话总结

对于需要补测试债或提升代码质量的开发者,这是一个值得尝试的开源工具,尤其适合本地化、合规要求高的场景。