docs(claude): update testing conventions to reflect GUT TDD workflow
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
29
CLAUDE.md
29
CLAUDE.md
@@ -127,10 +127,31 @@ Ausnahme: Komplexe mathematische Berechnungen oder nicht-offensichtliche Workaro
|
||||
|
||||
### Tests
|
||||
|
||||
Für ein Spiel dieser Größe keine Unit-Tests nötig. Stattdessen:
|
||||
- **Scene-Tests** manuell auf echtem Android-Tablet pro Sprint
|
||||
- **Smoke-Test-Checkliste** in `docs/smoke-tests.md` (wird im Laufe der Entwicklung gepflegt)
|
||||
- **Kinder als UAT** — wöchentliches Zeigen der Builds
|
||||
**Framework:** GUT v9.6.0 (`addons/gut/`)
|
||||
|
||||
**Headless runner:**
|
||||
|
||||
"F:/Development/_tools/Godot_v4.6.2-stable_win64/Godot_v4.6.2-stable_win64.exe" --headless -s res://addons/gut/gut_cmdln.gd -gdir=res://test/ -gexit
|
||||
|
||||
**TDD-Workflow (ab Sprint 15):**
|
||||
1. Failing test schreiben für die neue Logik
|
||||
2. Test ausführen → muss FAIL sein
|
||||
3. Minimalimplementierung schreiben
|
||||
4. Test ausführen → muss PASS sein
|
||||
5. Committen
|
||||
|
||||
**Was wird getestet:**
|
||||
- ✅ Autoloads: `GameState`, `RoomNavigator`, `SaveManager`
|
||||
- ✅ State-Machines: `GiftBox`, `TeaPot`, `Cradle`, `DeliveryBed`, etc.
|
||||
- ✅ Reine Logik-Berechnungen (Koordinaten, Serialisierung)
|
||||
- ❌ Tween-Animationen (visuell, kein Assert möglich)
|
||||
- ❌ Touch-Input (manuelle Tests auf Tablet)
|
||||
|
||||
**Test-Dateien:** `test/unit/test_<class_name>.gd`, extends `GutTest`
|
||||
|
||||
**Device-Tests:**
|
||||
- Scene-Tests manuell auf echtem Android-Tablet pro Sprint
|
||||
- Kinder als UAT — wöchentliches Zeigen der Builds
|
||||
|
||||
## UI/UX-Regeln
|
||||
|
||||
|
||||
Reference in New Issue
Block a user