场景四 · 测试覆盖审计
业务背景
项目在测试执行前需要回答两个问题:
- 「我有没有为每条需求都准备了测试?」—— 保障覆盖率
- 「我是否存在没挂在任何需求上的孤儿测试?」—— 保障测试集合的有效性
手工方法是用 Excel 维护一张矩阵,由质量人员逐条核对——代价高且容易过时。
演示能力
平台读取项目的需求基线、计划测试用例、自动生成的 CAPL 用例和现有的验证序列:
- 构建双向覆盖矩阵
- 按需求类型(功能需求 / 安全需求 / 接口需求等)和业务域(近光灯、远光灯、方向灯、危险灯、角灯、转向控制等)分别计算覆盖率
- 与场景一的追溯结果交叉验证,识别两个分析视角不一致的条目
🌟 本场景的 Graft 架构
本场景通过 Graft 引用两个上游 Session 的结果:
Graft 在这里的两个作用:
- 资产复用 — 场景一的追溯数据、场景三的新测试用例不必重读原始文档,直接引用上游结构化结果
- 交叉验证 — 两个独立 Session 得出的覆盖结论做对比,差异部分自动标为"待复核项"——这是避免"单一视角误判"的系统机制
相关阅读:Graft 跨会话嫁接
实际发给 Agent 的提示词
演示账号 testcasegenerator 在 Session DEMO-D 测试-需求映射审计 里真实发出的指令。这条提示词最关键的是显式列出上游两个 session 的 ID,让 Agent 用 graft skill 去拉前置产物,避免重新读一遍原始文档:
这条提示词就是 Graft 在真实项目里的标准用法——先有 DEMO-A / DEMO-C 两个独立 session 各自完成追溯和测试生成,等到要做覆盖审计时,把两个 session_id 贴进来,Agent 直接读取上游 artifact 做交叉比对,不需要把 docx/xlsx 重新读一遍。Token 节省一倍以上,且结论可溯源。
实测数据
总体覆盖情况:
| 维度 | 数值 |
|---|---|
| 需求总数 | 105 条 |
| 已被覆盖 | 46 条 |
| 未被覆盖 | 59 条 |
| 整体覆盖率 | 43.8% |
| 孤儿测试 | 0 个 |
按需求类型分组:
| 需求类型 | 总数 | 已覆盖 | 覆盖率 |
|---|---|---|---|
| 功能需求 (ELS) | 49 | 40 | 81.6% |
| 安全控制需求 (SCS) | 43 | 0 | 0.0% ⚠️ |
| 功能安全需求 (FSR) | 13 | 6 | 46.2% |
按业务域分组(计划用例 / 已有 CAPL 用例 / 已有 ValSeq 序列):
| 业务域 | 计划 | CAPL | ValSeq |
|---|---|---|---|
| 近光灯 | 9 | 7 | 5 |
| 远光灯 | 6 | 0 | 2 |
| 方向灯 | 12 | 0 | 3 |
| 危险灯 | 2 | 0 | 0 |
| 角灯 | 3 | 0 | 0 |
| 转向控制 (SCS) | 0 | 0 | 0 |
| 其他 | 13 | 0 | 0 |
与场景一的交叉验证结果:
- 34 条需求两个视角一致 ✅
- 14 条仅在场景一识别到(可能是漏了测试)
- 79 条仅在场景四识别到(可能是场景一追溯不全)
- 差异部分自动标记为"待复核项",避免单一视角带来的误判
Agent 产出的自包含 HTML 看板(D-coverage-dashboard.html)顶部:105 / 46 / 59 / 43.8% 四张 KPI 卡,下方是"按功能域 — 三级测试覆盖分布"堆叠柱图(已规划 / 已实现 CAPL / 已执行验证序列)和"按需求类型覆盖率"环形图。

按需求类型覆盖率环形图:ELS 功能需求 81.6%、FSR 功能安全需求 46.2%、SCS 安全控制需求 0%——SCS 的 0% 覆盖率是一眼可见的重大风险项(图中的橙色 / 红色区块)。

按功能域 — 三级测试覆盖分布堆叠柱图:蓝色 = 已规划 / 绿色 = 已实现 CAPL / 橙色 = 已执行验证序列。近光灯(21 条需求,三色齐全)是当前测试最完整的域;其他域如远光灯 / 方向灯几乎只有"已规划",一眼看出"计划了多少、真正落地多少"的差距。

全部需求覆盖状态表(105 条,支持按功能域 / 状态 / 关键词筛选):已覆盖 显示绿色、未覆盖 显示红色。表格同步列出每条需求的覆盖测试名(例如 ELS-14 被 TC_LowBeam_On / TC_LowBeam_Off 等多条 testcase 覆盖)。可以直接作为评审会议里"逐条核对"的替代物。

客户价值
一份矩阵同时回答三个问题:
- 覆盖率
- 缺口分布
- 孤儿测试
并按需求类型和业务域两个维度切分,让管理层可以快速定位"哪个域风险最大"(本例中 SCS 域 0% 覆盖率是首要风险)。
多视角交叉验证机制确保结论可信,避免把覆盖率指标"包装得好看但失真"。
交付物
| 类别 | 文件 |
|---|---|
| 报告文档 | D-test-requirement-coverage.docx |
| 可视化看板 | D-coverage-dashboard.html |
| 结构化数据 | D-coverage-matrix.xlsx / coverage_analysis.json / dashboard_data.json |