| name | review-testcase |
| description | AI测试用例质量评审专家技能。对AI生成的测试用例进行分类分级(可用/待修改/错误无效)、5维评审打分(逻辑完整性25分+预期结果明确性20分+前置条件完备性15分+PRD覆盖度25分+边界异常覆盖15分)、7项量化指标统计(需求覆盖率/反向用例占比/边界用例数量/重复用例率/错误用例率/高危场景覆盖率/历史缺陷覆盖率),输出逐条评分+扣分原因+改进建议,保持同原文件后缀格式新增输出。支持Excel和XMind格式输入。 |
Review-testcase - AI 测试用例质量评审
Overview
本技能扮演资深测试评审专家角色,核心能力是对 AI 生成的测试用例进行 分类分级、逐条评分、量化统计,输出带评审标注的结果文件和汇总报告。
核心流程:
输入文件(Excel/XMind)
↓
解析用例结构
↓
Phase 1: 逐条评分(5维评审体系)
↓
Phase 2: 分类分级(评分驱动 + 否决规则修正)
↓
Phase 3: 量化统计(7项核心指标计算)
↓
输出文件(同格式 + 评审标注)+ 评审汇总报告
触发条件
以下场景自动触发本技能:
- 用户提供测试用例文件,要求"评审用例""评价用例质量""检查用例"
- 用户要求"对AI用例分级分类""筛选可用用例""标注错误用例"
- 用户要求"用例打分""用例评分""用例质量检查"
- 用户要求"统计用例覆盖率""量化用例质量""用例质量指标"
- 用户提及"review-testcase""/review_testcase"
输入识别
接收以下输入,按优先级处理:
- 测试用例文件(必需):Excel (.xlsx/.xls) 或 XMind (.xmind) 格式的测试用例
- PRD/需求文档(选填):docx/pdf/txt 格式的需求文档,用于计算 PRD 覆盖度和需求覆盖率
- 高危场景清单(选填):txt/excel 格式,列出支付/订单/权限等核心场景,用于计算高危场景覆盖率
- 历史Bug清单(选填):excel/txt 格式,近3个版本的线上Bug,用于计算历史缺陷覆盖率
如果用户未提供 PRD 文档、高危场景清单、历史Bug清单,对应指标标记为"⚠️ 缺少参考数据,无法计算",但不影响其他评审和评分。
执行流程
Step 1: 解析输入
根据文件格式选择不同的解析方式:
Excel文件解析:
- 调用
scripts/review_excel_handler.py 读取用例数据
- 解析用例结构(编号、标题、前置条件、步骤、测试数据、预期结果、优先级等字段)
- 将每条用例转为结构化文本,供AI逐条评审
XMind文件解析:
- 调用
scripts/review_xmind_handler.py 读取测试点数据
- 解析XMind思维导图的树状结构,提取各层级测试点
- 将测试点转为文本格式,供AI逐条评审
Step 2: 逐条评分(Phase 1 - 5维评审)
对每条用例/测试点,按照 references/scoring-rules.md 中的5维评审体系逐项打分:
| 评审维度 | 满分 | 评审重点 |
|---|
| 逻辑完整性 | 25分 | 步骤是否清晰、逻辑链路是否跑通、是否存在跳跃或矛盾 |
| 预期结果明确性 | 20分 | 每一步的预期结果是否可验证,金额、状态是否有明确定义 |
| 前置条件完备性 | 15分 | 环境、数据、权限、商品类型等前置条件是否完整 |
| PRD覆盖度 | 25分 | 是否覆盖了需求文档中的核心功能点与联动规则 |
| 边界异常覆盖 | 15分 | 边界值、并发、互斥、错误处理是否充分 |
评分要求:
- 每个维度必须给出具体分数和扣分原因
- 扣分原因必须引用用例中的具体内容(如"第3步预期结果为'验证成功'")
- 必须给出改进建议,改进建议要具体可操作(如"第3步预期结果改为'订单状态变为已支付,扣款金额=99.00元'")
评分输出格式(每条用例):
用例编号: TC-001
分类: 待修改
总分: 68
评分明细:
- 逻辑完整性: 18/25(扣7分:第3步到第4步存在跳跃,缺少"点击确认按钮"的中间操作)
- 预期结果明确性: 14/20(扣6分:第2步预期结果为"验证支付成功",未说明判定标准)
- 前置条件完备性: 10/15(扣5分:未说明账号权限和订单支付状态)
- PRD覆盖度: 20/25(扣5分:未覆盖PRD中要求的组合优惠场景)
- 边界异常覆盖: 6/15(扣9分:未测试金额为0的边界场景,未测试并发支付)
扣分原因汇总: 步骤跳跃-3分 | 预期结果模糊-6分 | 前置条件缺失-5分 | PRD场景遗漏-5分 | 边界异常不足-9分
改进建议:
1. 在第3步和第4步之间补充"点击确认支付按钮"
2. 第2步预期结果改为"订单状态变为'已支付',账户余额减少99.00元"
3. 前置条件补充"使用已登录的普通用户账号,且已有待支付订单"
4. 新增用例:支付金额为0时的异常处理
5. 新增用例:同一订单并发支付的互斥处理
Step 3: 分类分级(Phase 2 - 评分驱动 + 规则修正)
根据 Step 2 的评分结果,按照 references/classification-rules.md 中的规则进行分类:
| 分类 | 判定条件 |
|---|
| 可用 | 总分 ≥ 80 且每个维度 ≥ 该维度满分的60%,且无否决规则命中 |
| 待修改 | 总分在 50-79 之间,或总分≥80但存在1-2个维度低于60%阈值 |
| 错误无效 | 总分 < 50,或存在3个及以上维度低于60%阈值,或命中否决规则 |
否决规则(任一命中即归为"错误无效",无论总分高低):
- 业务逻辑与PRD矛盾
- 测试不存在的功能
- 步骤逻辑自相矛盾无法执行
- 与其他用例完全重复且无增量价值
- 预期结果与业务规则完全不符
Step 4: 量化统计(Phase 3 - 7项核心指标)
按照 references/metrics-formulas.md 中的公式计算7项量化指标:
| 指标 | 合格线 | 数据来源 |
|---|
| 需求覆盖率 | ≥ 95% | 需PRD文档 |
| 反向用例占比 | ≥ 30% | AI语义识别 |
| 边界用例数量 | 每功能点 ≥ 2 | AI语义识别 |
| 重复用例率 | ≤ 10% | AI语义比对 |
| 错误用例率 | ≤ 5% | 分类结果 |
| 高危场景覆盖率 | 100% | 需高危场景清单 |
| 历史缺陷覆盖率 | ≥ 80% | 需历史Bug清单 |
指标计算说明:
- "反向用例占比""边界用例数量""重复用例率""错误用例率"可仅基于用例文件计算
- "需求覆盖率""高危场景覆盖率""历史缺陷覆盖率"需要额外参考文档,缺少时标记"⚠️ 缺少参考数据"
Step 5: 输出结果
5A: Excel 输出
- 在原始用例列后新增以下评审列:
| 新增列 | 说明 |
|---|
| 用例分类 | 可用/待修改/错误无效 |
| 评审总分 | 0-100 |
| 逻辑完整性 | 0-25 |
| 预期结果明确性 | 0-20 |
| 前置条件完备性 | 0-15 |
| PRD覆盖度 | 0-25 |
| 边界异常覆盖 | 0-15 |
| 扣分原因 | 具体扣分项列表 |
| 改进建议 | 具体可操作的改进措施 |
-
用例分类列使用颜色标记:
- 可用 → 绿色背景
- 待修改 → 黄色背景
- 错误无效 → 红色背景
-
新增 Sheet "评审汇总",包含:
- 总体概况(各类别数量和占比)
- 量化指标达标情况表
- 各维度得分分布
- 典型问题 Top 10(按出现频次排序的扣分原因)
-
调用 scripts/review_excel_handler.py 的 append_review_to_excel() 生成新文档
-
命名规则:原文件名+【评审版】.xlsx
5B: XMind 输出
-
对每个测试点节点增加评审标注:
- labels 添加分类标签:"评审-可用"/"评审-待修改"/"评审-错误无效"
- 新增子节点"评审结果",包含:总分、5维得分、扣分原因、改进建议
-
在根主题下新增一级分支节点"评审汇总",包含:
- 总体概况子节点
- 量化指标达标情况子节点
- 典型问题 Top 10 子节点
-
调用 scripts/review_xmind_handler.py 的 append_review_to_xmind() 生成新文档
-
命名规则:原文件名+【评审版】.xmind
5C: 评审汇总报告
无论输入是Excel还是XMind,均额外输出一份 Markdown 格式的评审汇总报告:
# AI 测试用例评审报告
## 一、总体概况
- 总用例数:XX
- 可用(第一类):XX(XX%)
- 待修改(第二类):XX(XX%)
- 错误无效(第三类):XX(XX%)
## 二、量化指标达标情况
| 指标 | 实际值 | 合格线 | 是否达标 |
|------|--------|--------|---------|
| 需求覆盖率 | XX% | ≥ 95% | ✅/❌ |
| 反向用例占比 | XX% | ≥ 30% | ✅/❌ |
| 边界用例数量 | 每功能点 X 个 | 每功能点 ≥ 2 | ✅/❌ |
| 重复用例率 | XX% | ≤ 10% | ✅/❌ |
| 错误用例率 | XX% | ≤ 5% | ✅/❌ |
| 高危场景覆盖率 | XX% | 100% | ✅/❌ |
| 历史缺陷覆盖率 | XX% | ≥ 80% | ✅/❌ |
## 三、各维度得分分布
| 维度 | 平均分 | 满分 | 得分率 |
|------|--------|------|--------|
| 逻辑完整性 | XX | 25 | XX% |
| 预期结果明确性 | XX | 20 | XX% |
| 前置条件完备性 | XX | 15 | XX% |
| PRD覆盖度 | XX | 25 | XX% |
| 边界异常覆盖 | XX | 15 | XX% |
## 四、典型问题 Top 10
| 排名 | 问题类型 | 出现次数 | 典型示例 |
|------|---------|---------|---------|
| 1 | 预期结果模糊 | XX次 | "验证成功"无具体判定标准 |
| ... | ... | ... | ... |
## 五、改进建议汇总
(按优先级排列的改进建议)
- 报告命名规则:原文件名+【评审报告】.md
评审原则
- 评分必须客观有据:扣分必须引用用例中的具体内容,不可笼统说"不够好"
- 改进建议必须可操作:不可说"完善预期结果",而应给出具体的修改文本
- 分类必须有一致性:相同问题的用例应归入相同类别
- 推理链必须可见:每条用例的分类结果都要有推理链支撑
- 只评审不修改:评审标注作为新增列/标签,不修改原始用例内容
- 结构化规则优先:先执行硬性检查(空字段、占位符等),再做语义推理判断
与其他技能的协作
本技能是下游评审技能,与上游生成技能形成闭环:
generator-testcase-xmind ──→ 生成 XMind 用例 ──┐
│
generator-testcase-excel ──→ 生成 Excel 用例 ──┤──→ review-testcase ──→ 评审输出
│
safe-testcase ──→ 补全遗漏用例 ────────────────┘
建议使用流程:先使用生成技能产出用例 → 再用评审技能检验质量 → 根据评审结果修改待修改用例 → 必要时用 safe-testcase 补全遗漏场景。
Resources
scripts/review_excel_handler.py
Python脚本,用于读取Excel测试用例文件并追加评审结果。支持:
- 读取 .xlsx/.xls 格式的测试用例文件,解析为结构化数据
- 在原始用例列后新增9列评审字段
- 用例分类列自动设置颜色标记(可用=绿色,待修改=黄色,错误无效=红色)
- 新增"评审汇总"Sheet,包含总体概况、指标达标情况、维度得分分布、典型问题
append_review_to_excel(file_path, review_results, metrics_data, output_path) — 主写入函数
- 命名规则:原文件名+【评审版】.xlsx
scripts/review_xmind_handler.py
Python脚本,用于读取XMind测试点文件并追加评审标注。支持:
- 读取 .xmind 格式文件,解析树状测试点结构
- 为每个测试点节点添加分类标签到labels
- 为每个测试点节点新增"评审结果"子节点,包含评分和改进建议
- 在根主题下新增"评审汇总"一级分支
append_review_to_xmind(file_path, review_results, metrics_data, output_path) — 主写入函数
- 命名规则:原文件名+【评审版】.xmind
references/scoring-rules.md
5维评审体系的详细打分细则,包含每个维度的分段评分标准、扣分项清单和扣分分值。
references/classification-rules.md
三级分类(可用/待修改/错误无效)的判定规则,包含评分阈值、维度下限、否决规则和判定流程图。
references/metrics-formulas.md
7项量化指标的计算公式、合格线、数据来源说明,以及缺少参考数据时的处理方式。