Skip to content
Back to skills

Test Standards

ASecurity

测试规范层 skill。用于功能开发、bug 修复、接口/数据库/UI/业务规则改动后,判定必须包含哪些测试类型、最低断言深度、数据准备策略、自动化优先级、手工测试例外和交付阻断条件。触发场景:制定测试矩阵、判断本次最少要跑哪些测试、审查测试覆盖是否足够、施工前/交付前质量闸检查。

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 5, 2026
ai-agents

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 5, 2026

npx -y skills add BackToCimaCoppi/Praxis --skill test-standards --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Test Standards?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Test Standards
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/backtocimacoppi-test-standards/badge)](https://www.skillsdirectory.com/skills/backtocimacoppi-test-standards)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: test-standards
description: 测试规范层 skill。用于功能开发、bug 修复、接口/数据库/UI/业务规则改动后,判定必须包含哪些测试类型、最低断言深度、数据准备策略、自动化优先级、手工测试例外和交付阻断条件。触发场景:制定测试矩阵、判断本次最少要跑哪些测试、审查测试覆盖是否足够、施工前/交付前质量闸检查。
---

# 测试规范层

本 skill 只回答:这次改动必须测什么、测到什么深度、什么情况不能交付。不要在本层写具体命令、账号、端口、脚本写法或项目工具细节;执行方式交给 `test-execution-router` 与项目执行 skill。

## 0. 第一原则

在纯 AI 开发 loop 中,测试是最后一道质量闸,不是可选收尾。没有测试矩阵、没有自动化执行证据、没有无法自动化的明确理由,不允许交付。

默认规则:

- 能由 AI 自动化的测试必须自动化。
- AI 可控制浏览器/开发者工具、读取 DOM/data、截图并用 VLM 判读时,仍属于自动化;“有 GUI”“需要看图”“工具是交互式”都不是手工理由。
- 只有 AI 无法操作的真实设备、原生客户端对象、支付/OAuth/原生授权等物理边界,才允许转人工手工验证。
- 手工验证必须有物理边界证明、runbook、客观观测点、回传材料和写明责任角色的计划内人工里程碑。
- 跳过任一测试类型时,必须说明本次改动为什么不命中,而不是写“暂不需要”。
- 每次测试矩阵对下列八面**恰好各有一行**;不命中写可核 N/A 理由,禁止省略行。

## 1. 必选测试面

每次改动都先判断是否命中下列测试面,并形成测试矩阵:

| 测试面 | 何时必须纳入 | 最低要求 |
|---|---|---|
| 单元测试 | 业务规则、状态分支、算法、解析、组装、校验逻辑变化 | 覆盖正常、边界、异常或回归路径;不能只测 happy path |
| 接口测试 | 对外接口、鉴权、错误码、状态流、请求/响应字段变化 | 断言字段语义、错误语义、状态变化;不能只看成功码 |
| 数据库数据预置 | 需要稳定前置状态、跨步骤业务链路或复杂终态校验 | 幂等、可清理、命名空间隔离;优先通过业务接口造数 |
| 数据库数据校验 | 写链路、状态流转、表结构、索引/唯一约束、异步重算变化 | 校验终态、不变量、幂等和约束;不能只看有记录 |
| 网页 UI 自动化 | Web/admin 页面、表单、列表、弹窗、配置页、可视状态变化 | AI 自动操作关键路径,硬断言 DOM/数据,必要时自动截图+VLM 判读 |
| 小程序 UI 自动化 | 小程序页面、组件、状态管理、C 端路径变化 | AI/自动化工具操作关键路径,硬断言元素/data,canvas/复杂视觉自动截图判读 |
| 小程序视觉验收 | 页面布局、图表、canvas 合成图、视觉规格变化 | 自动产出截图并由 VLM/视觉模型判读规格差异;不能只证明截图存在 |
| 手工验证 | AI 无法操作的真实设备、原生客户端对象、支付/OAuth/原生授权 | 仅作物理边界例外;物理边界证明 + runbook + 观测点 + 回传材料 + 人工里程碑及责任角色缺一不可 |

## 2. 改动范围到测试矩阵

按改动范围选择测试组合:

| 改动范围 | 必跑 | 常见附加 |
|---|---|---|
| 纯后端内部规则 | 单元测试 | 若影响外部行为,加接口测试;若落库,加 DB 校验 |
| 对外接口 | 接口测试、相关单元测试 | 若写数据,加 DB 预置/校验;若被 UI 消费,加对应 UI 自动化 |
| 数据库结构或写链路 | DB 预置、DB 校验、相关单元/接口测试 | 若影响展示,加 UI 自动化或视觉验收 |
| 后台网页 | Web UI 自动化、接口测试 | 配置写入必须加 DB 校验;视觉变化加截图判读 |
| 小程序业务页 | 小程序 UI 自动化、接口测试 | 视觉/图表/canvas 变化加视觉验收 |
| 小程序视觉/合成图 | 小程序 UI 自动化、小程序视觉验收 | 若素材/配置来自后端,加接口测试与 DB 校验 |
| 鉴权、支付、用户数据删除、业务 ID、核心算法 | 相关测试全纳入,金标准/回归必跑 | 自动升级为高风险质量闸;测试通过不等于免除人工审查,但人工审查发生在设计/章程拍板与终点验收,**不构成执行中的停机闸门** |
| 纯文案或非行为样式微调 | 视影响面最小化 | 仍需视觉或 UI 验证;不得默认“无需测试” |

## 3. 数据策略

根据业务真实性和风险选择数据策略:

| 策略 | 适用 | 要求 |
|---|---|---|
| DB 预置 -> 测试 -> DB 校验 | 需要稳定构造复杂状态、异常状态或历史数据 | 前置必须幂等、可清理;不得 broad cleanup;业务 ID 需合法来源 |
| 接口造数 -> 测试 -> DB 校验 | 需要验证真实业务写链路或 ID/状态由系统生成 | 优先使用;造数接口本身也要记录为前置链路 |
| 复用测试数据 -> 测试 -> DB 校验 | 数据昂贵或依赖外部平台 | 必须证明数据稳定、不会污染他人测试 |
| 人工前置 -> AI 自动校验 | 真机/外部平台授权等 AI 无法完成的前置 | 人工只做绕不过去的动作;后续校验仍由 AI 执行 |

## 4. 最低断言深度

断言必须验证业务语义,不只验证“跑通”:

运行证据同样受本节约束:套件退出码、文件存在、日志/报告哈希、测试名或 AC 编号只能证明“执行载体发生过”,不能单独证明业务断言。每条通过结论必须能回到框架原生断言事件、真实扫描结果或采集时物理边界原始观测。

| 测试面 | 不合格断言 | 合格断言 |
|---|---|---|
| 单元测试 | 方法返回非空 | 分支结果、边界值、异常路径、关键不变量 |
| 接口测试 | `code == 0` / `data` 非空 | 核心字段值、字段关系、错误码、状态变化、分页/空态 |
| DB 校验 | 查询有行 | 行数、关键字段、唯一约束、状态终态、幂等重跑结果;共享余额/限额/计数类写路径加**真并发下不变量保持** |
| Web UI | 页面能打开 | 关键路径可操作、表格/表单值正确、错误/空态正确 |
| 小程序 UI | 页面不白屏 | 用户路径、元素文本/data、加载/空态/权限态正确 |
| 视觉验收 | 截图存在 | 布局、文案、图表/canvas、遮挡、规格差异被判读 |

## 5. 交付阻断条件

以下任一情况必须阻断交付:

- 未产出测试矩阵。
- 直接命中的测试面没有执行证据。
- 跳过测试没有具体原因。
- 自动化失败被标成“手工通过”替代。
- AI 可控 GUI、开发者工具或 VLM 判读被降级成手工。
- 手工项缺物理边界证明、runbook 或计划内人工里程碑及责任角色。
- 用例失败后未分类就改断言或删除用例。
- 只跑冒烟测试,却宣称完成正式接口/业务验证。
- 视觉变化只有截图文件,没有判读结论。
- 数据写链路只有接口响应,没有 DB 终态校验。
- 用模拟/构造替身的结果冒充真实链路验证(未标注保真度 `simulated`,或未写明真实链路收口去向)。
- 改动命中死亡线/高风险区域,对应金标准用例未生效(无 `execution_ref`),却未显式登记豁免并上报。
- `VERIFIED` 只绑定套件成功、聚合哈希或换名后的通用观测,不能还原该 AC 的实际业务结果。
- 金标准只有正向返回值,没有不变量终态与负向副作用的原生观测事件。

## 6. 输出格式

使用本 skill 后,输出至少包含:

```markdown
## 测试矩阵(固定八面,各一行)
| 测试面 | 本次是否命中 | 原因/N/A证据 | 自动化/手工 | 保真度(真连/模拟/手工) | 证据要求 |

## 数据策略
- 选择:DB 预置 / 接口造数 / 复用数据 / 人工前置
- 理由:
- 清理与隔离:

## 最低断言
- 接口:
- DB:
- UI/视觉:

## 阻断项
- 未覆盖测试:
- 不能自动化原因:
```

## 7. 与其他 skill 的边界

- 写具体用例:使用 `test-case-design`。
- 路由执行:使用 `test-execution-router`。
- 项目命令、凭据、浏览器、小程序、视觉工具:使用项目执行 skill。

Files in this skill

  • SKILL.md8.2 KB
  • agents/openai.yaml265 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.