论文

TestGRAD:利用失败模式优化编码Agent集成测试

TestGRAD: Evolving Test Suites via Failure Pattern Momentum for SWE-Agent Ensemble

智能体系统应用与实践Agent 协作Agent Harness编程

摘要

SWE-Agent集成将不同Agent的互补候选补丁结合,提高问题解决能力。核心因此是基于测试进行选择:生成测试、执行补丁并识别最佳结果。我们把这一过程表述为测试空间优化,不断演化可执行仓库测试集,直到能够区分竞争补丁。已有测试生成方法的优化能力有限:通常没有为集成选择明确损失,更新方向主要局限于新建或删除测试,也缺乏反复失败提供的反馈。借鉴带动量的梯度下降,我们提出自动测试优化框架TestGRAD,围绕三个概念展开。差分损失给优化器一个由执行结果定义的目标:有效测试应按行为区分候选补丁。完整CRUD梯度将更新扩展为读取已有测试基础设施、新建测试、更新过时断言,以及仅删除失效测试。失败模式动量从记忆中提取高频失败序列,避免反复尝试无法区分候选的方向,同时压缩失败历史上下文。在SWE-bench Verified上,四Agent集成取得84.2%的Pass@1,较最强基线80.6%提高3.6个百分点,同时把失败历史上下文压缩超过100倍。

TestGRAD:利用失败模式优化编码Agent集成测试:论文原图
图 1:TestGRAD 框架概述。给定一个问题和来自多个 SWE 代理的候选补丁,TestGRAD 迭代地改进存储库测试套件:前向传递执行测试以获得差分损失;失败的非差异更新存储在故障内存中并挖掘为故障模式动量;向后传递使用损失和动量来生成下一个 CRUD 测试更新。