测试用例生成技能Skill generate-cases

该技能用于通过形式化测试设计技术(如等价类划分、边界值分析、决策表)生成全面的测试用例,适用于软件测试和测试覆盖设计。关键词:测试用例生成,等价类划分,边界值分析,决策表,软件测试,测试覆盖。

测试 0 次安装 0 次浏览 更新于 3/11/2026

name: generate-cases description: 使用形式化技术(等价类划分、边界值分析、决策表)生成系统测试用例。用于全面测试覆盖设计。 allowed-tools: Read, Write, Glob, Grep, Skill, Task argument-hint: <requirement-or-feature>

生成测试用例命令

使用形式化测试设计技术为需求或功能生成全面的测试用例。

流程

步骤 1: 解析输入

需求/功能可以是:

  • 需求 ID (REQ-001) - 在文档中查找
  • 功能描述 - 直接分析
  • 文件路径 - 读取规范

步骤 2: 加载技能

调用 test-strategy:test-case-design 技能以获取技术指导。

步骤 3: 分析测试空间

识别:

  • 输入: 所有参数及其有效/无效范围
  • 状态: 任何状态依赖行为
  • 条件: 具有多个条件的业务规则
  • 输出: 每个场景的预期结果

步骤 4: 委托给代理

生成 test-case-generator 代理:

为以下内容生成系统测试用例:

[需求/功能描述]

应用这些技术:
1. 等价类划分 - 识别有效/无效类
2. 边界值分析 - 在边缘测试
3. 决策表 - 如果存在多个条件
4. 状态转换 - 如果存在状态依赖行为

输出:
1. Markdown格式的测试用例规范
2. .NET xUnit代码(如果适用)

步骤 5: 组织输出

按类别结构化测试用例:

## 测试用例: [功能名称]

### 正面测试(快乐路径)
| TC-ID | 描述 | 输入 | 预期 |
|-------|-----|------|------|
| TC-001 | 有效最小值 | 18 | 接受 |
| TC-002 | 有效标准值 | 40 | 接受 |

### 负面测试(验证)
| TC-ID | 描述 | 输入 | 预期 |
|-------|-----|------|------|
| TC-003 | 低于最小值 | 17 | 拒绝 |
| TC-004 | 空输入 | null | 错误 |

### 边界测试
| TC-ID | 描述 | 输入 | 预期 |
|-------|-----|------|------|
| TC-005 | 在最小值 | 18 | 接受 |
| TC-006 | 在最大值 | 65 | 接受 |

### 边缘情况
| TC-ID | 描述 | 输入 | 预期 |
|-------|-----|------|------|
| TC-007 | 零值 | 0 | 拒绝 |
| TC-008 | 负值 | -1 | 拒绝 |

步骤 6: 生成代码(可选)

如果检测到.NET项目,生成xUnit测试:

public class [Feature]Tests
{
    // 边界值测试
    [Theory]
    [InlineData(17, false)]
    [InlineData(18, true)]
    [InlineData(65, true)]
    [InlineData(66, false)]
    public void Validate_BoundaryValues_ReturnsExpected(int input, bool expected)
    {
        var result = _validator.Validate(input);
        Assert.Equal(expected, result);
    }
}

步骤 7: 报告

## 生成的测试用例

**功能**: [名称]
**应用的技术**: [列表]
**总测试用例数**: [数量]

| 类别 | 数量 |
|------|------|
| 正面 | X |
| 负面 | Y |
| 边界 | Z |
| 边缘情况 | W |

**创建的文件**:
- [路径/到/test-cases.md]
- [路径/到/Tests.cs](如果适用)

**覆盖说明**:
- 所有输入分区已覆盖
- 边界值已测试
- [任何缺口或假设]

示例

从描述:

/test-strategy:generate-cases "年龄验证:接受年龄 18-65"

从需求:

/test-strategy:generate-cases REQ-015

从文件:

/test-strategy:generate-cases docs/requirements/user-registration.md