TestPrism: Rethinking Test Evaluation Beyond a Single Reference
TestPrism:超越单参考的代码测试评估与 TestHelix 改进
🧭 LLM 代码测试生成评估
Nanjing University · Hong Kong Polytechnic University · Tencent
提出 TestPrism 基准与联合成功函数,揭示单参考评估高估测试质量,并用 TestHelix 将联合成功率提升 8.67-9.00 个百分点
📌 工作参考价值
- 评估生成式输出(如 query 推荐、文案改写、搜索建议)时,不要只用单一参考做金标准:构建多个有效/无效候选,要求模型同时接受所有有效变体、拒绝所有无效变体,避免指标虚高。
- Agent 工作流中引入「同行交叉验证」:多个模型/策略互相打分、过滤,能提升生成结果的稳健性,可直接用于推荐文案、搜索词等多候选生成场景。
- 借鉴 TestHelix 的递归自我改进:用失败样本构造「错误→修复」对,迭代微调或 self-training,适合用于低资源场景下生成式推荐的冷启动或长尾覆盖。
- 异质合成正负样本的思路可迁移到推荐/搜索的训练数据构建:混合不同来源/策略生成多样化有效和无效样本,增强模型对边界情况的区分能力。
动机:LLM coding agent 生成测试的常用评估是对单一参考解验证,但一个需求可能存在多个合法实现,单参考评估会遗漏未覆盖行为、高估测试质量。
方法:提出 TestPrism 基准,包含 300 个测试任务(来自 17 个来源)和 3000 个候选实现,有效/无效各半。核心指标 Joint Success Function (JSF) 要求生成的测试必须:在初始程序状态失败;接受所有有效候选;拒绝所有无效候选。分析基线失败模式为:漏测行为、无支持的断言、错误测试构造。
进一步提出 TestHelix:通过异质合成测试-修复对、同行交叉验证和递归自我改进(RSI)来强化测试生成。
关键结果:14 个 baseline coding agent 配置的 JSF 仅为 28.00%,而单参考成功率达 59.67%,表明传统指标明显高估。TestHelix 在两个模型上相比原生 harness 比较器将 JSF 提升 8.67 至 9.00 个百分点。