name: 测试端到端 description: 执行端到端测试规范并报告结果。在实现后使用,以在审查前验证用户旅程。 argument-hint: [e2e-test-spec-path] allowed-tools: 读取、Bash、Glob
E2E 测试运行器
执行一个端到端测试规范并报告结果。
变量
e2e_test_file: $1 - E2E 测试规范文件的路径
指令
- 读取测试规范:加载并解析 e2e_test_file
- 理解用户故事:了解正在测试的用户旅程
- 执行测试步骤:按顺序执行每个步骤
- 验证检查点:仔细检查所有
**验证**步骤 - 捕获截图:按照测试中的指定保存截图
- 报告结果:返回结构化的 JSON 输出
执行过程
对于测试规范中的每个步骤:
- 读取步骤指令
- 执行操作(导航、点击、输入等)
- 如果步骤包含
**验证**:- 检查条件
- 如果失败,标记测试为失败并停止
- 如果步骤说“截图”:
- 捕获当前状态
- 保存到截图目录
成功标准验证
所有步骤完成后:
- 审查成功标准部分
- 验证每个标准是否满足
- 如果有任何标准失败,标记测试为失败
输出格式
仅返回 JSON 对象:
通过:
{
"test_name": "基本查询执行",
"status": "passed",
"screenshots": [
"screenshots/01_初始状态.png",
"screenshots/02_查询输入.png",
"screenshots/03_结果.png"
],
"error": null
}
失败:
{
"test_name": "基本查询执行",
"status": "failed",
"screenshots": [
"screenshots/01_初始状态.png",
"screenshots/02_查询输入.png"
],
"error": "步骤 8 失败:结果未在 5 秒内出现"
}
结果结构
| 字段 | 描述 |
|---|---|
test_name |
测试规范中的名称 |
status |
“passed” 或 “failed” |
screenshots |
捕获的截图路径数组 |
error |
失败时的错误描述,通过时为 null |
与闭环集成
此命令是 E2E 验证的 请求 阶段:
/test-e2e {spec} → [JSON 结果] → /resolve-failed-e2e-test {result}
使用示例
/test-e2e .claude/commands/e2e/test-basic-query.md