APIEval-20
收藏资源简介:
APIEval-20是一个用于黑盒API测试套件生成的基准数据集,包含20个精心设计的API场景,覆盖电子商务、支付、认证、用户管理、调度、通知以及搜索与过滤等多个应用领域。每个场景都植入了3到8个错误,根据复杂程度分为简单、中等和复杂三类,旨在评估AI代理在仅给定API请求模式和示例负载的情况下生成有效测试套件以发现实际错误的能力。
APIEval-20 is a benchmark dataset for black-box API test suite generation. It contains 20 meticulously designed API scenarios covering multiple application domains including e-commerce, payment, authentication, user management, scheduling, notification, search and filtering, etc. Each scenario is implanted with 3 to 8 bugs, and is categorized into three levels: simple, medium and complex based on complexity. It aims to evaluate the capability of AI Agents to generate effective test suites to discover real-world bugs when only provided with API request patterns and example payloads.
APIEval-20 基准测试概述
APIEval-20 是一个面向黑盒 API 测试套件生成的任务基准测试,旨在评估 AI 代理在仅提供 API 请求 Schema 和示例请求体(Payload)的情况下,生成能够发现实际 Bug 的测试套件的能力。
基准测试范围
- 数据集规模:包含 20 个精心设计的 API 测试场景。
- 覆盖领域:涵盖电商、支付、认证、用户管理、日程、通知、搜索和筛选共 7 个应用领域。
- 任务输入:代理仅接收每个场景的 JSON Schema 及一个示例请求体,无源代码、文档或其他上下文信息。
- 任务输出:代理需生成一个测试用例列表,每个用例包含测试名称和完整的 JSON 请求体。
错误(Bug)分类
每个场景包含 3 至 8 个植入的错误,按发现所需的推理复杂度划分为三个等级:
- 简单错误:无需领域语义理解,检测基本结构问题(如缺失必填字段、空值、数据类型错误)。
- 中等错误:需理解字段含义及约束(如数值越界、格式无效、枚举边界值)。
- 复杂错误:需理解字段间关系或操作语义(如互斥字段同时存在、不适用折扣)。
评估方法
所有 20 个参考 API 实现已部署并运行。通过自动化执行代理生成的测试用例,分析响应以判断哪些植入错误被触发。一个错误被认为被检测到,当至少一个测试用例产生的响应与正确行为出现偏差。
评分体系
最终得分由三个加权指标构成,取所有 20 个场景的平均分:
| 组件 | 权重 | 描述 |
|---|---|---|
| Bug 检测得分 | 70% | 检测到的错误数量占总植入错误数的比例。 |
| 覆盖率得分 | 20% | 测试套件对请求 Schema 字段的覆盖比例,仅统计参数覆盖。 |
| 效率得分 | 10% | 信噪比,即每个测试检测到的错误数(最多为 1)。 |
最终得分公式:0.7 × Bug Detection Rate + 0.2 × Coverage Score + 0.1 × Efficiency Score
得分解释:
- 0.0 – 0.3:弱,发现错误极少,覆盖有限。
- 0.3 – 0.5:发展中,能发现部分简单和中等错误,但遗漏居多。
- 0.5 – 0.7:熟练,能发现大部分简单和中等错误,复杂错误仍有遗漏。
- 0.7 – 1.0:强,能发现所有复杂度层级的错误,覆盖全面且测试套件精简。
基准排行榜
| 排名 | 系统 | 类别 | 最佳工作流 | Bug 检测率 | 覆盖率 | 效率 | 最终得分 | 标准差 |
|---|---|---|---|---|---|---|---|---|
| 1 | KushoAI | API 测试代理 | 原生 KushoAI | 0.89 | 1.00 | 0.14 | 0.83 | +/-0.03 |
| 2 | Claude Code | 编程代理 | 提示链 | 0.76 | 0.98 | 0.18 | 0.76 | +/-0.05 |
| 3 | Cursor | 编程代理 | 提示链 | 0.70 | 0.95 | 0.16 | 0.70 | +/-0.07 |
| 4 | GitHub Copilot | 编程代理 | 结构化提示 | 0.64 | 0.92 | 0.14 | 0.64 | +/-0.08 |
| 5 | Claude Sonnet 4.6 | 通用大语言模型 | 结构化提示 | 0.60 | 0.90 | 0.20 | 0.62 | +/-0.09 |
| 6 | GPT-5 | 通用大语言模型 | 结构化提示 | 0.56 | 0.88 | 0.18 | 0.58 | +/-0.08 |
| 7 | Gemini 2.5 Pro | 通用大语言模型 | 结构化提示 | 0.49 | 0.82 | 0.17 | 0.51 | +/-0.10 |
详细报告地址:https://resources.kusho.ai/ai-agent-benchmark-api-bug-detection
运行评估器
- 前提:Python 3.8 或更高版本。
- 设置:从 Hugging Face 数据集仓库克隆代码并安装依赖。
- 配置:需设置
APIEVAL_BASE_URL环境变量,可选设置APIEVAL_GRADE_URL。 - 评估单个场景:使用
eval/evaluate.py并指定测试套件文件路径和场景 ID。 - 评估全部 20 个场景:将所有命名规范的套件文件放入同一目录,运行批处理评估命令。
数据集可用性
- 数据仓库:https://github.com/kusho-co/api-eval-20
- 场景 Schema 和示例请求体位于
scenarios/文件夹内。 - 所有引用实现由 KushoAI 托管和维护。




