원클릭으로
devbooks-test-reviewer
devbooks-test-reviewer:以 Test Reviewer 角色评审 tests/ 测试质量(覆盖、边界、可读性、可维护性),只输出评审意见,不修改代码。用户说“测试评审/评审测试质量/覆盖率/边界条件”等时使用。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
devbooks-test-reviewer:以 Test Reviewer 角色评审 tests/ 测试质量(覆盖、边界、可读性、可维护性),只输出评审意见,不修改代码。用户说“测试评审/评审测试质量/覆盖率/边界条件”等时使用。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
devbooks-brownfield-bootstrap:存量项目初始化:在当前真理目录为空时生成项目画像、术语表、SSOT、基线规格与最小验证锚点,避免"边补 specs 边改行为"。用户说"存量初始化/基线 specs/项目画像/建立 glossary/初始化 SSOT/把老项目接入上下文协议"等时使用。
devbooks-delivery-workflow:完整闭环编排器,在支持子 Agent 的 AI 编程工具中调用,自动编排 Proposal→Design→Spec→Plan→Test→Implement→Review→Archive 全流程。用户说"跑一遍闭环/完整交付/从头到尾跑完/自动化变更流程"等时使用。
devbooks-ssot-maintainer:维护项目 SSOT 的"可寻址索引与派生进度视图"。用于"修改/同步 SSOT(上游或项目内)→ 生成可审计 delta → 同步 requirements.index.yaml →(可选)刷新 requirements.ledger.yaml"。通常由 `/devbooks:delivery` 在 `request_kind=governance` 路由下调用。注意:SSOT 初始化请使用 `brownfield-bootstrap`。
devbooks-knife:把 Epic 级需求切成可拓扑排序的 Slice 队列,并落盘机读 Knife Plan(用于高风险/史诗级变更的 G3 强制闸门)。
devbooks-archiver:归档阶段的唯一入口,负责完整的归档闭环(自动回写→规格合并→文档同步检查→变更包归档移动)。用户说"归档/archive/收尾/闭环/合并到真理"等时使用。
devbooks-coder:以 Coder 角色严格按 tasks.md 实现功能并跑闸门,禁止修改 tests/,以测试/静态检查为唯一完成判据。用户说"按计划实现/修复测试失败/让闸门全绿/实现任务项/不改测试",或在 DevBooks apply 阶段以 coder 执行时使用。
| name | devbooks-test-reviewer |
| description | devbooks-test-reviewer:以 Test Reviewer 角色评审 tests/ 测试质量(覆盖、边界、可读性、可维护性),只输出评审意见,不修改代码。用户说“测试评审/评审测试质量/覆盖率/边界条件”等时使用。 |
| recommended_experts | ["Test Engineer"] |
| allowed-tools | ["Glob","Grep","Read","Bash"] |
目标:明确本 Skill 的核心产出与使用范围。 输入:用户目标、现有文档、变更包上下文或项目路径。 输出:可执行产物、下一步指引或记录路径。 边界:不替代其他角色职责,不触碰 tests/。 证据:引用产出物路径或执行记录。
适用:需要细化策略、边界或风险提示时补充。
适用:需要与外部系统或可选工具协同时补充。
执行前必须按以下顺序查找配置(找到后停止):
.devbooks/config.yaml(如存在)→ 解析并使用其中的映射dev-playbooks/project.md(如存在)→ Dev-Playbooks 协议,使用默认映射project.md(如存在)→ template 协议,使用默认映射test-reviewer 是 DevBooks Apply 阶段的专门测试评审角色,与 reviewer(代码评审)互补。
| 维度 | test-reviewer | reviewer |
|---|---|---|
| 评审对象 | tests/(测试代码) | src/(实现代码) |
| 覆盖率评估 | ✅ | ❌ |
| 边界条件检查 | ✅ | ❌ |
| 测试可读性 | ✅ | ❌ |
| 测试可维护性 | ✅ | ❌ |
| 规格一致性 | ✅(与 verification.md 对比) | ❌ |
| 逻辑/风格/依赖 | ❌ | ✅ |
| 修改代码权限 | ❌ | ❌ |
src/ 目录下的实现代码tests/**, __tests__/**, *.test.*, *.spec.*verification.md 检查测试是否覆盖所有 AC核心理念:Test Reviewer 关注的是"测试写得好不好",而非"测试跑过没有"
禁止:
允许:
| 覆盖状态 | 定义 | 判断依据 |
|---|---|---|
| ✅ 已覆盖 | 存在对应 AC 的测试用例 | 测试文件中有对应的 test/it block |
| ⚠️ 部分覆盖 | 测试存在但场景不完整 | 缺少边界条件、错误路径等 |
| ❌ 缺失 | 没有对应测试用例 | 找不到对应的测试代码 |
禁止将以下状态纳入覆盖率判断:
verification.md 的 VT-ID 对应<change-root>/<change-id>/verification.md,了解测试计划# Test Review Report: <change-id>
## 概览
- 评审日期:YYYY-MM-DD
- 评审范围:`tests/feature-x/`
- 测试文件数:N
- 问题总数:N(Critical: N, Major: N, Minor: N)
## 覆盖率分析
> **注意**:覆盖状态基于测试代码存在性判断,与测试运行结果(Pass/Fail/Skip)无关。
| AC-ID | 测试文件 | 覆盖状态 | 备注 |
|-------|----------|----------|------|
| AC-001 | test-a.ts | ✅ 已覆盖 | 测试用例存在 |
| AC-002 | - | ❌ 缺失 | 无对应测试代码 |
| AC-003 | test-b.ts | ⚠️ 部分覆盖 | 测试存在但缺少边界条件 |
## 问题清单
### Critical (必须修复)
1. **[C-001]** `test-a.ts:42` - 测试依赖外部服务,无 mock
- 建议:添加 mock,确保测试独立
### Major (建议修复)
1. **[M-001]** `test-b.ts` - 缺少错误路径测试
- 建议:添加 `expect(...).toThrow()` 测试
### Minor (可选修复)
1. **[m-001]** `test-c.ts:15` - 测试命名不清晰
- 建议:`it('should do X')` 改为 `it('should return Y when given X')`
## 建议
1. [建议1]
2. [建议2]
## 评审结论
**结论**:[APPROVED / REVISE REQUIRED]
**判定依据**:
- Critical 问题数:N
- Major 问题数:N
- AC 覆盖率:N/M
---
*此报告由 devbooks-test-reviewer 生成*
评审完成后,必须给出明确的结论:
| 结论 | 条件 | 含义 |
|---|---|---|
| ✅ APPROVED | Critical=0 且 Major≤2 且 AC覆盖率≥90% | 测试质量达标,可继续下一步 |
| ⚠️ APPROVED WITH COMMENTS | Critical=0 且 Major≤5 且 AC覆盖率≥80% | 可继续但建议后续改进 |
| 🔄 REVISE REQUIRED | Critical>0 或 Major>5 或 AC覆盖率<80% | 需 Test Owner 修改后重新评审 |
禁止行为:
| 场景 | 交互方 | 动作 |
|---|---|---|
| 发现测试缺失 | Test Owner | 提出建议,由 Test Owner 补充测试 |
| 发现测试与规格不一致 | Test Owner | 提出问题,确认是规格问题还是测试问题 |
| 发现实现问题(通过测试) | Reviewer | 通知 Reviewer 关注,不直接评审实现 |
| 字段 | 值 |
|---|---|
| Skill 名称 | devbooks-test-reviewer |
| 阶段 | Apply |
| 产物 | 评审报告(不写入变更包) |
| 约束 | CON-ROLE-001~005 |
本 Skill 在执行前自动检测上下文,选择合适的评审范围。
检测规则参考:skills/_shared/上下文检测模板.md
verification.md 是否存在| 模式 | 触发条件 | 行为 |
|---|---|---|
| 完整评审 | 新变更包首次评审 | 评审所有测试文件 |
| 增量评审 | 已有评审报告 | 只评审新增/修改的测试 |
| 覆盖率检查 | 带 --coverage 参数 | 只检查 AC 覆盖情况 |
检测结果:
- verification.md:存在
- 测试文件变更:5 个
- AC 覆盖状态:8/10
- 运行模式:增量评审