Skip to content
generate-cases logo

Generate Test Cases Command

generate-cases

Generate systematic test cases using formal techniques (equivalence partitioning, boundary value analysis, decision tables). Use for comprehensive test coverage design.

SKILL.md

Full skill instructions

Generate Test Cases Command

Generate comprehensive test cases for a requirement or feature using formal test design techniques.

Process

Step 1: Parse Input

The requirement/​feature can be:

  • A requirement ID (REQ-001) - look up in docs
  • A feature description - analyze directly
  • A file path - read the specification

Step 2: Load Skills

Invoke the test-strategy:test-case-design skill for technique guidance.

Step 3: Analyze Test Space

Identify:

  • Inputs: All parameters and their valid/​invalid ranges
  • States: Any state-dependent behavior
  • Conditions: Business rules with multiple conditions
  • Outputs: Expected results for each scenario

Step 4: Delegate to Agent

Spawn the test-case-generator agent:

Generate systematic test cases for the following:

[Requirement/​Feature Description]

Apply these techniques:
1. Equivalence Partitioning - identify valid/​invalid classes
2. Boundary Value Analysis - test at edges
3. Decision Tables - if multiple conditions exist
4. State Transition - if state-dependent behavior

Output:
1. Test case specifications in markdown
2. .NET xUnit code if applicable

Step 5: Organize Output

Structure test cases by category:

## Test Cases: [Feature Name]

### Positive Tests (Happy Path)
| TC-ID | Description | Input | Expected |
|-------|-------------|-------|----------|
| TC-001 | Valid minimum | 18 | Accept |
| TC-002 | Valid standard | 40 | Accept |

### Negative Tests (Validation)
| TC-ID | Description | Input | Expected |
|-------|-------------|-------|----------|
| TC-003 | Below minimum | 17 | Reject |
| TC-004 | Null input | null | Error |

### Boundary Tests
| TC-ID | Description | Input | Expected |
|-------|-------------|-------|----------|
| TC-005 | At minimum | 18 | Accept |
| TC-006 | At maximum | 65 | Accept |

### Edge Cases
| TC-ID | Description | Input | Expected |
|-------|-------------|-------|----------|
| TC-007 | Zero value | 0 | Reject |
| TC-008 | Negative | -1 | Reject |

Step 6: Generate Code (Optional)

If .NET project detected, generate xUnit tests:

public class [Feature]Tests
{
    // Boundary value 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);
    }
}

Step 7: Report

## Test Cases Generated

**Feature**: [Name]
**Techniques Applied**: [List]
**Total Test Cases**: [Count]

| Category | Count |
|----------|-------|
| Positive | X |
| Negative | Y |
| Boundary | Z |
| Edge Cases | W |

**Files Created**:
- [path/​to/​test-cases.md]
- [path/​to/​Tests.cs] (if applicable)

**Coverage Notes**:
- All input partitions covered
- Boundary values tested
- [Any gaps or assumptions]

Examples

From description:

/​test-strategy:generate-cases "Age validation: accept ages 18-65"

From requirement:

/​test-strategy:generate-cases REQ-015

From file:

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