| name | plan-tests |
| description | Create a test plan for an approved spec. Use after spec approval, before writing tests. Invoke with '/plan-tests path/to/spec.md' or 'plan tests', 'test planning', 'what tests do we need'. |
| contract | {"tags":["tdd","test-planning"],"state_source":"spec","inputs":{"params":[{"name":"spec_path","required":true}],"gates":[{"field":"status","value":"Approved"}]},"outputs":{"mutates":[{"field":"Test Plan.status","sets_to":"Planned"}],"side_effects":[]},"next":["write-failing-test"],"human_gate":false} |
Plan Tests
Creates a test plan and adds it to the spec document. This separates test planning (analytical) from test writing (implementation).
Why This Skill Exists
Test planning and test writing are different cognitive tasks:
- Planning = "What scenarios need coverage?" (analytical)
- Writing = "How do I express this in code?" (implementation)
Separating them means:
- When tests miss edge cases → fix the planning
- When tests are flaky/poorly structured → fix the writing
- Each skill is simpler and more focused
- You can review the test plan before any code is written
When to Use
- After a spec is approved
- Before
/write-failing-test
- User says "plan tests", "what tests do we need", or "test planning"
Prerequisites
- Spec document exists and is approved
- Path to spec provided as argument
Instructions
Step 1: Read and Parse the Spec
Read the spec document. Extract: