360 Secure SkillHub
360 安全技能中心

qa-output-validation

在测试用例生成完毕、准备输出前进行最后一轮防幻觉校验:事实核查(需求ID与边界是否真实)、一致性检查、可执行性验证与来源追溯,输出含 pass/fail 结论与问题清单的验证报告;验证失败需返回问题清单要求修正。仅用 Read/Grep/Glob 读取本地材料,结果只写入 workspace/,不外传。

kokxi
kokxi
热度 59.40
最近更新 2026-09-29 12:28:45
分类:开发依赖:读写文件应用场景:报告撰写 / 工作流 / 校对润色

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add qa-output-validation
Metadata
displayName
输出验证
name
qa-output-validation
description
在最终输出前对测试用例做最后一轮防幻觉验证:事实核查(引用的需求ID是否存在)、一致性检查(用例之间是否矛盾)、可执行性验证(步骤是否能实际操作)、来源追溯(每个用例是否能追溯到具体需求)。当测试用例已经生成完毕、准备输出了,但你不确定AI有没有编造不存在的功能或需求时,应当使用此技能。这是整个工作流的最终质量守门——如果验证失败,必须返回问题清单要求修正,不得跳过。 触发场景:验证一下输出、检查有没有幻觉、这个用例对吗、确认一下质量、时。 Use when the user asks about: final anti-hallucination verification of generated test cases — fact checking, cross-case consistency, executability, and requirement traceability.
license
MIT
allowed-tools
Read Grep Glob
metadata
{"slug":"qa-output-validation","display-name":"输出验证","version":"1.8.0","when-to-use":"AI生成测试用例后、最终输出前自动激活;用户说\"验证一下输出\"、\"检查有没有幻觉\"、\"这个用例对吗\"、\"确认一下质量\"时","related-skills":"{\"upstream\":[\"qa-ai-output-critique\",\"qa-ai-blindspot-compensation\"],\"downstream\":[\"qa-test-reporting\"]}","references":"[\"references/validation-dimensions.md\"]","input-format":"{\"required\":[{\"name\":\"测试用例\",\"type\":\"array\",\"description\":\"AI生成的测试用例列表\"},{\"name\":\"需求解构表\",\"type\":\"object\",\"description\":\"原始需求解构结果\"}],\"optional\":[{\"name\":\"评审报告\",\"type\":\"object\",\"description\":\"评审结果\"}]}","output-format":"{\"traceability\":[\"本技能验证输出,不新增唯一ID;问题清单关联到原用例ID(TC_{模块缩写}_{功能缩写}_{序号},如 TC_API_LOGIN_001)\"],\"structure\":[\"覆盖率:标注口径(基于现有需求/输入文档),禁止\\\"全覆盖/100%\\\"绝对化表述;缺失模块标注\\\"未覆盖+原因\\\"\",{\"validation_result\":\"pass/fail\"},{\"fact_check\":\"事实核查结果\"},{\"consistency_check\":\"一致性检查结果\"},{\"executability_check\":\"可执行性验证结果\"},{\"issues\":\"问题清单\"},{\"traceability\":\"来源追溯\"}]}","error-recovery-guidance":"{\"on_failure\":\"返回问题清单和具体失败原因,要求修正后重新生成\",\"retry_behavior\":\"修正后重新执行AI生成步骤\"}","categories":"[\"Development\",\"Testing\",\"AI\"]","depth-requirement":"{\"reference_value\":\"根据用例数量调整验证深度:简单×1/中等×2/复杂×3\",\"minimum\":\"至少完成事实核查、一致性检查、可执行性验证、来源追溯4项\"}"}

⚠️ 本技能单独使用效果有限,建议配合完整技能集(12 步工作流)使用。安装:npx skills add Kokxi/qa-test-skills

⚠️ 安全警告:本技能的示例可能涉及对虚无功能的删除或标记建议。 实际使用时请勿直接删除测试用例或功能项,先确认其来源并备份原数据。 本技能仅在 workspace/ 输出评估文件,不持久化、不外传、不跨会话复用。

输出验证

核心原则

AI可能编造不存在的内容——必须验证每个输出的依据。

加载时机

什么时候读 读哪个
逐维做防幻觉校验时 references/validation-dimensions.md

验证维度的完整内容已下沉至 references/validation-dimensions.md,避免每次触发都占用上下文。

验证流程

步骤1:事实核查

执行内容:
1. 对比用例中的需求ID与需求解构表
2. 检查风险ID是否基于实际分析
3. 验证边界条件是否真实存在
4. 检查引用的行业知识是否准确

输出:
├─ 核查通过项:[列表]
├─ 核查失败项:[列表]
└─ 幻觉风险项:[列表]

步骤2:一致性检查

执行内容:
1. 验证需求ID与用例的对应关系
2. 验证风险ID与用例的匹配关系
3. 验证场景与边界的覆盖关系
4. 验证评审结果与实际输出的一致性

输出:
├─ 一致项:[列表]
├─ 不一致项:[列表]
└─ 矛盾项:[列表]

步骤3:可执行性验证

执行内容:
1. 检查测试步骤的具体性
2. 检查预期结果的可验证性
3. 检查测试数据的可构造性
4. 检查测试环境的可搭建性

输出:
├─ 可执行项:[列表]
├─ 部分可执行项:[列表]
└─ 不可执行项:[列表]

步骤4:生成验证报告

## 输出验证报告

### 验证摘要
- 验证日期:YYYY-MM-DD
- 用例总数:XX条
- 验证结果:通过/不通过

### 事实核查
| 检查项 | 结果 | 说明 |
|--------|------|------|
| 需求真实性 | 通过/失败 | [说明] |
| 风险合理性 | 通过/失败 | [说明] |
| 边界可验证性 | 通过/失败 | [说明] |
| 行业标准准确性 | 通过/失败 | [说明] |

### 一致性检查
| 检查项 | 结果 | 说明 |
|--------|------|------|
| 需求ID匹配 | 通过/失败 | [说明] |
| 风险ID匹配 | 通过/失败 | [说明] |
| 场景边界对应 | 通过/失败 | [说明] |
| 评审结果一致 | 通过/失败 | [说明] |

### 可执行性验证
| 用例编号 | 可执行性 | 问题 |
|---------|---------|------|
| TC_XXX_001 | 可执行 | - |
| TC_XXX_002 | 部分可执行 | [问题] |
| TC_XXX_003 | 不可执行 | [问题] |

### 问题清单
| 问题类型 | 用例编号 | 问题描述 | 严重程度 |
|---------|---------|---------|---------|
| 幻觉 | TC_XXX_001 | 需求ID不存在 | 高 |
| 不一致 | TC_XXX_002 | 风险等级与内容不符 | 中 |
| 不可执行 | TC_XXX_003 | 步骤过于模糊 | 中 |

### 验证结论
- 是否通过:是/否
- 主要问题:[描述]
- 建议:[建议]

验证策略速查表

不同输出类型的验证侧重点不同:

输出类型 优先验证维度 特别关注 验证深度
功能用例 可执行性+事实核查 步骤是否可操作 ★★★
边界用例 事实核查 边界值是否真实存在 ★★★★
异常用例 可执行性+一致性 异常场景是否合理 ★★★★
安全用例 事实核查+可执行性 攻击向量是否真实 ★★★★★
性能用例 可执行性 指标是否可测量 ★★★
全量用例集 全部四维 全流程一致性 ★★★★★

常见幻觉类型与处理

幻觉类型 表现 检测方法 处理方式
虚无功能 AI编造不存在的功能模块 对比需求解构表 删除或标记
过度推断 从"登录失败"推"账号被锁"但需求未提 检查推理链是否在需求范围内 降级为假设场景
数据编造 编造不存在的API返回字段 对比接口文档/边界清单 修正或删除
时间幻觉 断言"3次锁定"但需求写5次 比对原始需求 修正为准确值
跨模块矛盾 A模块说"跳转B",B模块用例推翻 一致性检查矩阵 统一修正
依赖幻觉 假设了不存在的前置依赖 检查前置条件是否有需求支撑 标注[假设]

输出示例

用户说"帮我验证AI生成的登录测试用例" → 事实核查:验证所有需求ID、场景、预期结果是否基于真实需求文档 → 一致性检查:同一功能的不同用例之间描述是否一致 → 可执行性验证:每个用例的步骤是否清晰可执行 → 来源追溯:标注每个用例的信息来源(需求文档/分析结果/AI推断)

AI生成了一个不存在的功能模块的测试用例 → 事实核查命中:该模块ID在需求文档中不存在,标记为幻觉

检查清单

输出验证完成后检查:

  • 事实核查是否完成?
  • 一致性检查是否通过?
  • 可执行性验证是否完成?
  • 来源追溯是否标注?
  • 问题清单是否列出?
  • 验证报告是否完整?

输出验证 vs 输出评审

维度 输出验证(本技能) 输出评审(qa-ai-output-critique)
目标 防幻觉、保质量 找不足、促迭代
视角 事实核查:是否"真实" 质量评估:是否"够好"
输出 验证报告(pass/fail) 评审报告(六维评分+改进建议)
触发时机 最终输出前 生成后、迭代中
核心问题 "这个用例能执行吗?" "这个用例够全面吗?"
处理幻觉 标记+删除 反馈+补充