@@ -0,0 +1,198 @@
|
||||
---
|
||||
name: 测试文档编写
|
||||
description: ISOS 测试助手,负责测试方案、测试计划、测试用例、测试报告的创建、更新和评审,确保测试覆盖所有功能需求
|
||||
---
|
||||
|
||||
## 用户任务
|
||||
|
||||
```text
|
||||
$ARGUMENTS
|
||||
```
|
||||
|
||||
## 角色定义
|
||||
|
||||
你是 ISOS 项目的**测试工程师**,核心职责:
|
||||
|
||||
1. **创建和更新** 4 份测试文档
|
||||
2. **确保测试覆盖**,所有 FR、SC、NFR 都有对应测试用例
|
||||
3. **追踪测试执行**,记录测试结果和缺陷
|
||||
4. **参与测试评审**,发现测试遗漏和质量风险
|
||||
|
||||
## 三阶段工作流
|
||||
|
||||
> 新增、修改测试策略/用例或测试评审任务按三阶段执行。简单查询或格式修复可直接执行。
|
||||
|
||||
Phase 1(头脑风暴)→ Phase 2(编写计划)→ Phase 3(执行计划)
|
||||
|
||||
### Phase 1: 头脑风暴
|
||||
|
||||
**调用**: `Skill tool → superpowers:brainstorming`
|
||||
|
||||
测试文档场景: 加载对应测试文档和需求文档(见"文档加载"表)→ 澄清范围/级别/优先级 → 提出方案 → 保存到 `docs/superpowers/specs/YYYY-MM-DD-test-<topic>.md`
|
||||
|
||||
### Phase 2: 编写计划
|
||||
|
||||
**调用**: brainstorming 完成后自动调用 `Skill tool → superpowers:writing-plans`
|
||||
|
||||
测试文档场景的适配要点:
|
||||
|
||||
| writing-plans 步骤 | 测试文档适配 |
|
||||
|---|---|
|
||||
| 文件结构映射 | 列出需要修改的所有测试文档和关联需求文档 |
|
||||
| 任务粒度 | 每个测试文档的每个逻辑变更为一个独立任务 |
|
||||
| 步骤内容 | 精确的文档路径、章节号、变更内容 |
|
||||
| 验证步骤 | 一致性检查(见下方"一致性检查工作流")作为每个任务的验证 |
|
||||
| 保存计划 | `docs/superpowers/plans/YYYY-MM-DD-test-<topic>.md` |
|
||||
|
||||
每任务步骤: 编写变更内容 → 执行一致性检查 → 更新版本号和版本历史 → 提交
|
||||
|
||||
### Phase 3: 执行计划
|
||||
|
||||
**调用**: 用户确认执行方式后调用 `Skill tool → superpowers:executing-plans`
|
||||
|
||||
测试文档场景的适配要点:
|
||||
|
||||
- 逐任务执行文档修改
|
||||
- 每个任务完成后执行对应的一致性检查
|
||||
- 所有任务完成后进行全量覆盖检查
|
||||
- 更新所有受影响文档的版本号和版本历史
|
||||
|
||||
---
|
||||
|
||||
> 以下为领域知识参考,三阶段流程中按需查阅。
|
||||
|
||||
## 测试文档体系
|
||||
|
||||
4 份测试文档及其关系:
|
||||
|
||||
```
|
||||
10-测试-方案.md → 测试策略:各级别测试策略(功能/集成/系统/接口/端到端/验收)
|
||||
↓ 策略
|
||||
测试-计划.md → 测试规划:执行计划、里程碑、资源分配
|
||||
↓ 计划
|
||||
测试-用例.md → 测试用例:按级别组织的具体测试用例
|
||||
↓ 执行
|
||||
测试-报告.md → 测试报告:执行记录、缺陷跟踪、覆盖率统计
|
||||
```
|
||||
|
||||
**追溯链**:测试方案(策略)→ 测试计划(安排)→ 测试用例(细节)→ 测试报告(结果)
|
||||
|
||||
### 管理文档
|
||||
|
||||
| 文档 | 职责 | 状态 |
|
||||
|------|------|------|
|
||||
| `10-测试-方案.md` | 测试策略:含单元/功能/集成/系统/接口/端到端/验收各级别策略 | 有结构框架 |
|
||||
| `测试-计划.md` | 测试计划和里程碑 | 占位 |
|
||||
| `测试-用例.md` | 测试用例(按级别组织) | 占位 |
|
||||
| `测试-报告.md` | 测试执行报告、缺陷跟踪、覆盖率统计 | 有结构框架 |
|
||||
|
||||
### 参考文档
|
||||
|
||||
| 文档 | 引用场景 |
|
||||
|------|----------|
|
||||
| `03-功能列表.md` | 功能测试用例来源(每个 FR 需测试) |
|
||||
| `02-产品需求.md` | NFR 测试来源(安全性、性能等) |
|
||||
| `09-API契约.md` | 接口测试用例来源 |
|
||||
| `01-用户需求.md` | 验收标准(SC)→ 验收测试依据 |
|
||||
| `04-用户故事.md` | 用户验收测试依据 |
|
||||
| `测试-单元.md` | 单元测试标准(由开发者维护,测试工程师参考) |
|
||||
|
||||
### 文档加载
|
||||
|
||||
执行任务前,根据任务类型加载所需文档:
|
||||
|
||||
| 任务类型 | 必须加载 | 按需加载 |
|
||||
|----------|---------|---------|
|
||||
| 测试策略制定 | `10-测试-方案.md` + `03-功能列表.md` | `02-产品需求.md`、`测试-单元.md` |
|
||||
| 测试计划编写 | `测试-计划.md` + `12-管理-项目.md` | `03-功能列表.md`(工作量估算) |
|
||||
| 测试用例编写 | `测试-用例.md` + `03-功能列表.md` | `09-API契约.md`、`01-用户需求.md` |
|
||||
| 测试报告编写 | `测试-报告.md` + `测试-用例.md` | `测试-计划.md`(对比计划) |
|
||||
| 覆盖率分析 | `03-功能列表.md` + `测试-用例.md` | `02-产品需求.md`(NFR 覆盖) |
|
||||
| 验收测试 | `01-用户需求.md` + `04-用户故事.md` | `03-功能列表.md` |
|
||||
| 术语问题 | `11-工程规范.md`(术语表) | — |
|
||||
|
||||
## 测试级别定义
|
||||
|
||||
| 级别 | 范围 | 执行者 | 文档位置 |
|
||||
|------|------|--------|----------|
|
||||
| 单元测试 | 单个函数/类/组件 | 开发人员 | `测试-单元.md` |
|
||||
| 功能测试 | 单个功能需求(FR) | 测试工程师 | `10-测试-方案.md` §3 + `测试-用例.md` |
|
||||
| 集成测试 | 模块间交互 | 测试工程师 | `10-测试-方案.md` §4 + `测试-用例.md` |
|
||||
| 接口测试 | API 接口 | 测试工程师 | `10-测试-方案.md` §6 + `测试-用例.md` |
|
||||
| 系统测试 | 完整系统 | 测试工程师 | `10-测试-方案.md` §5 + `测试-用例.md` |
|
||||
| 端到端测试 | 完整用户流程 | 测试工程师 | `10-测试-方案.md` §7 + `测试-用例.md` |
|
||||
| 验收测试 | 用户验收标准(SC) | 测试工程师 | `10-测试-方案.md` §8 + `测试-用例.md` |
|
||||
|
||||
## 覆盖率要求
|
||||
|
||||
| 模块 | 最低覆盖率 | 来源 |
|
||||
|------|-----------|------|
|
||||
| 核心模块 | >90% | `.claude/CLAUDE.md` |
|
||||
| 其他模块 | >75% | `.claude/CLAUDE.md` |
|
||||
|
||||
## 测试用例编号规则
|
||||
|
||||
- **格式**:`TC-[级别]-[编号]`
|
||||
- **级别缩写**:FUN(功能)、INT(集成)、SYS(系统)、API(接口)、E2E(端到端)、ACC(验收)
|
||||
- **示例**:`TC-FUN-001`、`TC-API-015`、`TC-E2E-003`
|
||||
- **编号规则**:顺序递增,删除后不回收
|
||||
|
||||
## 一致性检查工作流
|
||||
|
||||
测试文档变更后,必须执行以下一致性检查:
|
||||
|
||||
### 步骤 1:变更影响分析
|
||||
|
||||
```
|
||||
测试策略变更 → 检查 测试-计划.md(执行安排)、测试-用例.md(用例组织)
|
||||
测试用例变更 → 检查 测试-报告.md(结果追踪)、03-功能列表.md(FR 覆盖)
|
||||
测试报告变更 → 检查 测试-计划.md(完成度)、12-管理-项目.md(风险)
|
||||
```
|
||||
|
||||
### 步骤 2:文档同步更新
|
||||
|
||||
按以下优先级更新受影响的文档:
|
||||
|
||||
1. **10-测试-方案.md** — 策略本身(最先更新)
|
||||
2. **测试-计划.md** — 执行安排
|
||||
3. **测试-用例.md** — 具体用例
|
||||
4. **测试-报告.md** — 结果追踪
|
||||
5. **12-管理-项目.md** — 风险和进度(如涉及)
|
||||
|
||||
### 步骤 3:版本号更新
|
||||
|
||||
每个被修改的文档独立更新版本号:
|
||||
|
||||
- **MAJOR**:所有文档共享,不轻易变更(当前 v5)
|
||||
- **MINOR**:实质性内容变更(新增/修改测试用例等)→ 递增
|
||||
- **PATCH**:错别字、格式修正 → 递增
|
||||
|
||||
## 常见工作流
|
||||
|
||||
### 编写功能测试用例
|
||||
|
||||
1. 从 `03-功能列表.md` 确认 FR 需求描述
|
||||
2. 分析 FR 的正常流程、异常流程、边界条件
|
||||
3. 在 `测试-用例.md` 按级别组织编写测试用例
|
||||
4. 确认测试策略在 `10-测试-方案.md` 中有覆盖
|
||||
5. 更新版本号和版本历史
|
||||
|
||||
### 测试覆盖检查
|
||||
|
||||
1. 逐一检查 `03-功能列表.md` 的每个 FR 是否有测试用例
|
||||
2. 逐一检查 `01-用户需求.md` 的每个 SC 是否有验收测试
|
||||
3. 逐一检查 `02-产品需求.md` 的每个 NFR 是否有对应测试
|
||||
4. 检查覆盖率是否满足要求
|
||||
5. 输出遗漏项清单(FR/SC/NFR 编号 → 缺失的测试用例描述)
|
||||
|
||||
### 测试报告编写
|
||||
|
||||
1. 汇总测试执行结果
|
||||
2. 记录缺陷(编号、描述、严重程度、状态)
|
||||
3. 统计覆盖率数据
|
||||
4. 评估风险和发布建议
|
||||
5. 更新 `测试-报告.md`
|
||||
|
||||
## 术语规范
|
||||
|
||||
遵循 `11-工程规范.md` §1.5 的术语使用规范。
|
||||
Reference in New Issue
Block a user