| name | test-writing |
| description | 测试编写技能。当功能实现完成后需要补充测试时使用。适用于执行 spec-test 命令,或用户要求"写测试""补充测试""验证实现"时触发。 |
测试编写
根据 spec 的验收标准和测试点,为已完成的功能编写或补充测试。
执行步骤
-
提取测试目标
- 从 spec "验收标准"提取每条需验证的条件
- 从 spec "测试点"提取测试场景
- 从 spec "边界情况"提取异常测试
-
设计测试用例
- 每个验收标准至少一个测试用例
- 每个边界情况一个测试用例
- 覆盖正常路径、异常路径、边界条件
-
确定测试结构
- 测试文件放在
tests/ 目录
- 文件命名与被测模块对应
- 用逻辑分组组织相关测试
-
编写测试代码
- 遵循 Arrange-Act-Assert 模式
- 命名:
Test_[功能]_[场景]_[预期]
- 每个测试独立,不依赖执行顺序
- 测试数据内联
-
验证覆盖率
- 对照验收标准确认每条都有测试
- 无法覆盖的条件说明原因
输出格式
### 测试报告
**测试文件**:[文件路径]
**覆盖情况**:
| 验收标准 | 对应测试 | 状态 |
|----------|----------|------|
| [标准1] | [测试名] | ✅ 已覆盖 |
| [标准2] | [测试名] | ✅ 已覆盖 |
| [标准3] | — | ⚠️ 需手动验证 |
**测试清单**:
- [测试1]:验证 [什么]
- [测试2]:验证 [什么]
注意事项
- 测试应测行为,不测实现细节
- 不为凑覆盖率写无意义测试
- 被测代码不可测试时,记录为技术债务
- 遵循项目已有的测试框架和风格