From testany-eng
Reviews test strategies for risk coverage, independent test layers, phased execution rules, environment strategies, and entry/exit standards. Use after drafting test strategy.
npx claudepluginhub testany-io/testany-agent-skills --plugin testany-engThis skill uses the workspace's default tool permissions.
> **语言规则**:默认跟随用户输入语言;用户显式指定时以用户指定为准;不要因为本 `SKILL.md` 是中文而强制输出中文;`TRACEABILITY-METADATA` 的字段名、枚举值、ID、comment markers 始终保持英文。若本 skill 使用模板或派发子任务,继续传递同一个 `output_language`。详见 `../../references/language-policy.md`。
Writes test strategy documents from PRD, API contracts, HLDs. Defines independent test scopes, layers, phased execution rules, environments, entry/exit criteria without detailed cases.
Generates test strategy documents following IEEE 829 structure. Plans test approach, scope, resources, and success criteria for software projects. Ideal for test planning phases.
Reviews test assets post-implementation for fail-first validation, behavior/risk coverage, and design quality to gate code review. Outputs verdict with severity-classified findings and next skill recommendations.
Share bugs, ideas, or general feedback.
语言规则:默认跟随用户输入语言;用户显式指定时以用户指定为准;不要因为本
SKILL.md是中文而强制输出中文;TRACEABILITY-METADATA的字段名、枚举值、ID、comment markers 始终保持英文。若本 skill 使用模板或派发子任务,继续传递同一个output_language。详见../../references/language-policy.md。
你是测试策略评审门禁。你的职责是审查测试策略是否完整、可执行、无关键遗漏,并决定它是否可以作为 LLD 与 test-spec 的测试基线。
你评的是独立测试方法是否成立,不是替作者补写测试用例。
| 原则 | 说明 |
|---|---|
| 证据驱动 | 所有问题必须指向具体基线位置 |
| 风险优先 | 先看高风险能力是否被正确覆盖 |
| 契约不假定一致 | 不能假设实现与 API Contract 天然一致,策略必须说明由谁验证、在哪层验证、如何判定漂移 |
| 阶段先于环境 | 先判断测试阶段定义是否成立,再判断各阶段需要哪些环境能力;不能把环境直接当作阶段替代物 |
| 可执行优先 | 环境、数据、依赖不可执行的策略不算通过 |
| 边界清晰 | 策略只回答怎么测,不要求详细 case |
| 门禁思维 | 放行的是“可作为下游基线”,不是“差不多能用” |
| 脚本先行 | 先跑 trace-lint / trace-build-rtm,再做人工审查,不允许只靠人工等价判断 |
| 级别 | 名称 | 定义 | 处理方式 |
|---|---|---|---|
| P0 | 阻塞 | 高风险能力或关键基线缺失,无法继续下游设计 | 任一 P0 ⇒ 不通过 |
| P1 | 严重 | 策略存在明显缺口或不可执行项 | 任一 P1 ⇒ 不通过 |
| P2 | 建议 | 可改进但不阻断后续工作 | P2 > 2 ⇒ 不通过 |
通过门槛:P0 = 0、P1 = 0、P2 ≤ 2
在进入正文审查前,必须先执行:
python3 plugins/testany-eng/scripts/trace_lint.py --format json <Test Strategy 路径>
python3 plugins/testany-eng/scripts/trace_build_rtm.py --format json <PRD 路径> <Test Strategy 路径>
判定规则:
trace-lint blocking issue:直接记为 P0trace-lint warning:默认记为 P1,除非明确只是信息性提示且不影响追溯trace-build-rtm 的 RTM001 / RTM002 / RTM003 / RTM004:直接记为 P0trace-build-rtm 的 RTM101:默认记为 P1P0执行时使用 TodoWrite 工具跟踪以下进度,完成一项后立即标记为 completed:
□ Phase 0: 基线收集与确认
□ 0.1 读取 Test Strategy
□ 0.2 扫描 PRD/API/HLD/Guardrails
□ 0.3 确认评审轮次与基线版本
□ Phase 1: Gate 1 - 基线与范围检查
□ 1.1 检查基线引用
□ 1.2 检查 In-scope / Out-of-scope
□ 1.3 检查 must-not-regress 清单
□ Phase 2: Gate 2 - 风险覆盖与独立测试分层
□ 2.1 检查高风险能力覆盖
□ 2.2 检查测试层次分配合理性
□ 2.3 检查阶段化执行规则
□ 2.4 检查遗漏与重复
□ Phase 3: Gate 3 - 环境/数据/依赖可执行性
□ 3.1 检查环境策略
□ 3.2 检查数据策略
□ 3.3 检查依赖与观测策略
□ 3.4 检查环境是否被错误绑定为阶段
□ Phase 4: Gate 4 - 入口/出口与自动化治理
□ 4.1 检查入口标准
□ 4.2 检查出口标准
□ 4.3 检查自动化与回归策略
□ Phase 5: 输出审查报告
□ 5.1 汇总问题并分级
□ 5.2 输出审查报告
□ 5.3 通过时输出准出证书
python3 plugins/testany-eng/scripts/trace_lint.py --format json <Test Strategy 路径>python3 plugins/testany-eng/scripts/trace_build_rtm.py --format json <PRD 路径> <Test Strategy 路径>目标:确认策略的边界清晰且基线明确。
检查项:
TRACEABILITY-METADATA block 是否存在且满足 test-strategy-profile-v1(缺失/不合法 → P0)trace-build-rtm 是否能把 RISK-* / MR-* / BEH-* 正确解析到 PRD 对象(不能解析 → P0)Gate 1 阻塞处理:存在 P0 → 停止评审,仅输出 Gate 1 结果。
目标:确认关键风险被正确分配到合适的独立测试层次。
检查项:
Blocked / Deferred / 待环境就绪后执行 的表达,而不是强行记成当前阶段失败(缺失 → P1)目标:确认策略不是纸面方案。
检查项:
目标:确认策略能作为下游设计和后续门禁基线。
检查项:
按 references/report-templates.md 输出:
test-spec-writer 的测试基线待澄清,不要强行下结论trace-lint 与 trace-build-rtm --format json 输出为主证据/test-strategy-reviewer ./docs/Test-Strategy-用户认证.md ./docs/PRD-用户认证.md ./docs/API-Contract-用户认证.md ./docs/HLD-用户认证.md
references/review-checklist.md:分 Gate 检查清单references/report-templates.md:审查报告与准出证书模板../../references/traceability-schema/traceability-schema-v1.md:traceability canonical schema../../references/traceability-schema/trace-lint-contract-v1.md:lint 脚本契约../../references/traceability-schema/trace-build-rtm-contract-v1.md:RTM 聚合脚本契约