Back to list
ab300819

devdocs-test-cases

by ab300819

0🍴 0📅 Jan 23, 2026

SKILL.md


name: devdocs-test-cases description: Design test cases based on requirements. Use when users need test case design, testing strategy, or QA planning. Triggers on keywords like "test cases", "test design", "unit test", "integration test", "e2e test". allowed-tools: Read, Write, Glob, Grep, AskUserQuestion

测试用例设计

基于需求文档设计测试用例,建立验收标准与测试用例的追溯关系。

语言规则

  • 支持中英文提问
  • 统一中文回复
  • 使用中文生成文档

触发条件

  • 用户已完成需求文档
  • 用户要求设计测试用例
  • 用户需要测试覆盖策略

前置条件

  • 需求文档:docs/devdocs/01-requirements.md
  • 如不存在,建议先运行 /devdocs-requirements

核心理念

测试用例来源

功能点 (F-XXX)
    │
    └── 用户故事 (US-XXX)
            │
            └── 验收标准 (AC-XXX)
                    │
                    ├── 单元测试 (UT-XXX)  ← 验证内部逻辑
                    │
                    ├── 集成测试 (IT-XXX)  ← 验证组件协作
                    │
                    └── E2E 测试 (E2E-XXX) ← 验证用户场景

关键原则

  • 测试用例从需求推导,不是从代码推导
  • 每个验收标准至少有一个测试用例覆盖
  • 测试类型根据验收标准的性质选择

测试类型选择

验收标准类型推荐测试类型示例
输入验证规则单元测试"邮箱格式校验" → UT
业务逻辑规则单元测试 + 集成测试"密码加密存储" → UT + IT
用户交互流程E2E 测试"完成注册流程" → E2E
组件间协作集成测试"发送验证邮件" → IT

编号规范

类型前缀格式示例
单元测试UTUT-XXXUT-001, UT-002
集成测试ITIT-XXXIT-001, IT-002
E2E 测试E2EE2E-XXXE2E-001, E2E-002

工作流程

1. 读取需求文档
   │
   ▼
2. 提取功能点、用户故事、验收标准
   │
   ▼
3. 为每个验收标准选择测试类型
   │
   ▼
4. 设计单元测试用例 (UT-XXX)
   │
   ▼
5. 设计集成测试用例 (IT-XXX)
   │
   ▼
6. 设计 E2E 测试用例 (E2E-XXX)
   │
   ▼
7. 生成追溯矩阵
   │
   ▼
8. 用户确认

输出文件

主文件docs/devdocs/03-test-cases.md

文档拆分规则

当满足以下条件时,应拆分文档:

  • 测试用例总数超过 30 个
  • 文档超过 300 行
  • 单一测试类型用例超过 15 个

拆分方式

docs/devdocs/
├── 03-test-cases.md           # 主文档:测试策略、覆盖率要求、追溯矩阵
├── 03-test-unit.md            # 单元测试用例(UT-XXX)
├── 03-test-integration.md     # 集成测试用例(IT-XXX)
└── 03-test-e2e.md             # E2E 测试用例(E2E-XXX)

拆分内容分配

文件包含内容
03-test-cases.md测试策略、覆盖率要求、追溯矩阵、测试用例汇总
03-test-unit.md所有单元测试用例详情(UT-001 ~ UT-XXX)
03-test-integration.md所有集成测试用例详情(IT-001 ~ IT-XXX)
03-test-e2e.md所有 E2E 测试用例详情(E2E-001 ~ E2E-XXX)

主文档保留内容

  • 测试策略说明
  • 覆盖率目标
  • 完整追溯矩阵(F → US → AC → 测试)
  • 各子文档的用例范围说明

小型项目:如测试用例较少(< 30 个),可合并为单一文件 03-test-cases.md

详细模板参见:

测试用例概览文档结构

# 测试用例:<功能名称>

## 1. 测试策略
## 2. 覆盖率要求
## 3. 追溯矩阵
## 4. 测试用例汇总

追溯矩阵

追溯矩阵是核心产出,展示需求与测试的完整关联。

格式

| 功能点 | 用户故事 | 验收标准 | 单元测试 | 集成测试 | E2E测试 | 状态 |
|--------|----------|----------|----------|----------|---------|------|
| F-001 | US-001 | AC-001 | UT-001 | - | E2E-001 | ✅ |
| F-001 | US-001 | AC-002 | UT-002 | - | E2E-001 | ✅ |
| F-001 | US-002 | AC-004 | UT-003, UT-004 | IT-001 | - | ✅ |

状态说明

  • ✅ 完整覆盖:有对应测试用例
  • ⚠️ 部分覆盖:测试用例不足
  • ❌ 未覆盖:无测试用例

测试用例格式

单元测试用例

| 编号 | 验收标准 | 测试对象 | 场景 | 输入 | 预期输出 | 优先级 |
|------|----------|----------|------|------|----------|--------|
| UT-001 | AC-001 | validateEmail() | 有效邮箱 | "test@example.com" | true | P0 |
| UT-002 | AC-002 | validateEmail() | 无效格式 | "invalid" | false | P0 |

集成测试用例

| 编号 | 验收标准 | 测试场景 | 涉及组件 | 预期结果 | 优先级 |
|------|----------|----------|----------|----------|--------|
| IT-001 | AC-004 | 密码加密存储 | UserService + DB | 密码以 bcrypt 格式存储 | P0 |

E2E 测试用例

| 编号 | 用户故事 | 验收标准 | 操作步骤 | 预期结果 | 优先级 |
|------|----------|----------|----------|----------|--------|
| E2E-001 | US-001 | AC-001~AC-003 | 1. 打开注册页<br>2. 输入邮箱密码<br>3. 点击注册 | 注册成功,收到验证邮件 | P0 |

覆盖率要求

测试类型覆盖目标覆盖要求
单元测试核心业务逻辑行覆盖率 ≥ 80%,分支覆盖率 ≥ 80%
集成测试组件协作场景每个功能点至少 1 个 IT
E2E 测试用户故事每个 P0 用户故事至少 1 个 E2E

约束

追溯约束

  • 每个验收标准至少有 1 个测试用例覆盖
  • 必须生成追溯矩阵
  • 追溯矩阵必须覆盖所有 AC

用例设计约束

  • 测试用例必须关联验收标准编号
  • 每个用例必须有明确的预期结果
  • 优先级必须标注 (P0/P1/P2)

覆盖约束

  • P0 验收标准必须 100% 测试覆盖
  • P0 用户故事必须有 E2E 测试
  • 单元测试行覆盖率目标 ≥ 80%

质量约束(参考 /testing-guide

  • 测试名称必须描述预期行为
  • 禁止弱断言(toBeDefined, toBeTruthy 不能作为唯一断言)
  • Mock 只用于外部依赖

与其他 Skill 的关系

Skill关系
/devdocs-requirements前置:提供 F/US/AC 作为测试设计依据
/testing-guide协作:编写测试代码时的质量约束
/devdocs-dev-tasks后续:测试用例转化为开发任务

下一步

完成后建议运行 /devdocs-dev-tasks 进行开发任务拆分。

Score

Total Score

45/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

0/5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon