123 lines
4.0 KiB
Markdown
123 lines
4.0 KiB
Markdown
# QA Plan: [Sprint/Feature Name]
|
|
|
|
> **Date**: [date]
|
|
> **Generated by**: /qa-plan
|
|
> **Scope**: [N stories across N systems]
|
|
> **Engine**: [engine name and version]
|
|
> **Sprint file**: [path to sprint plan]
|
|
|
|
---
|
|
|
|
## Story Coverage Summary
|
|
|
|
| Story | Type | Automated Test Required | Manual Verification Required |
|
|
|-------|------|------------------------|------------------------------|
|
|
| [story title] | Logic | Unit test — `tests/unit/[system]/` | None |
|
|
| [story title] | Integration | Integration test — `tests/integration/[system]/` | Smoke check |
|
|
| [story title] | Visual/Feel | None (not automatable) | Screenshot + lead sign-off |
|
|
| [story title] | UI | None (not automatable) | Manual step-through |
|
|
| [story title] | Config/Data | Data validation (optional) | Spot-check in-game values |
|
|
|
|
**Totals**: [N] Logic, [N] Integration, [N] Visual/Feel, [N] UI, [N] Config/Data
|
|
|
|
---
|
|
|
|
## Automated Tests Required
|
|
|
|
### [Story Title] — Logic
|
|
|
|
**Test file path**: `tests/unit/[system]/[story-slug]_test.[ext]`
|
|
|
|
**What to test**:
|
|
- [Formula or rule from GDD Formulas section — e.g., "damage = base * multiplier where multiplier ∈ [0.5, 3.0]"]
|
|
- [Each named state transition]
|
|
- [Each side effect that should / should not occur]
|
|
|
|
**Edge cases to cover**:
|
|
- Zero / minimum input values
|
|
- Maximum / boundary input values
|
|
- Invalid or null input
|
|
- [GDD-specified edge cases]
|
|
|
|
**Estimated test count**: ~[N] unit tests
|
|
|
|
---
|
|
|
|
### [Story Title] — Integration
|
|
|
|
**Test file path**: `tests/integration/[system]/[story-slug]_test.[ext]`
|
|
|
|
**What to test**:
|
|
- [Cross-system interaction — e.g., "applying buff updates CharacterStats and triggers UI refresh"]
|
|
- [Round-trip — e.g., "save → load restores all fields"]
|
|
|
|
---
|
|
|
|
## Manual QA Checklist
|
|
|
|
### [Story Title] — Visual/Feel
|
|
|
|
**Verification method**: Screenshot + [designer / art-lead] sign-off
|
|
**Evidence file**: `production/qa/evidence/[story-slug]-evidence.md`
|
|
**Who must sign off**: [designer / lead-programmer / art-lead]
|
|
|
|
- [ ] [Specific observable condition — e.g., "hit flash appears on frame of impact, not the frame after"]
|
|
- [ ] [Another falsifiable condition]
|
|
|
|
### [Story Title] — UI
|
|
|
|
**Verification method**: Manual step-through
|
|
**Evidence file**: `production/qa/evidence/[story-slug]-evidence.md`
|
|
|
|
- [ ] [Every acceptance criterion translated into a manual check item]
|
|
|
|
---
|
|
|
|
## Smoke Test Scope
|
|
|
|
Critical paths to verify before QA hand-off (run via `/smoke-check`):
|
|
|
|
1. Game launches to main menu without crash
|
|
2. New game / session can be started
|
|
3. [Primary mechanic introduced or changed this sprint]
|
|
4. [System with regression risk from this sprint's changes]
|
|
5. Save / load cycle completes without data loss (if save system exists)
|
|
6. Performance is within budget on target hardware
|
|
|
|
---
|
|
|
|
## Playtest Requirements
|
|
|
|
| Story | Playtest Goal | Min Sessions | Target Player Type |
|
|
|-------|--------------|--------------|-------------------|
|
|
| [story] | [What question must be answered?] | [N] | [new player / experienced / etc.] |
|
|
|
|
Sign-off requirement: Playtest notes → `production/session-logs/playtest-[sprint]-[story-slug].md`
|
|
|
|
If no playtest sessions required: *No playtest sessions required for this sprint.*
|
|
|
|
---
|
|
|
|
## Definition of Done — This Sprint
|
|
|
|
A story is DONE when ALL of the following are true:
|
|
|
|
- [ ] All acceptance criteria verified — automated test result OR documented manual evidence
|
|
- [ ] Test file exists for all Logic and Integration stories and passes
|
|
- [ ] Manual evidence document exists for all Visual/Feel and UI stories
|
|
- [ ] Smoke check passes (run `/smoke-check sprint` before QA hand-off)
|
|
- [ ] No regressions introduced — previous sprint's features still pass
|
|
- [ ] Code reviewed (via `/code-review` or documented peer review)
|
|
- [ ] Story file updated to `Status: Complete` via `/story-done`
|
|
|
|
**Stories requiring playtest sign-off before close**: [list, or "None"]
|
|
|
|
---
|
|
|
|
---
|
|
|
|
*Results and sign-off are tracked in the QA sign-off report generated by `/team-qa` — not in this plan file.*
|
|
|
|
*Template: `.claude/docs/templates/test-plan.md`*
|
|
*Generated by: `/qa-plan` — do not edit this line*
|