docs: Add note about manual vs automated testing

- Clarified that Phase 1 & 2 tests were done manually
- Added section for outstanding automated tests
- Listed missing test types: Unit, Integration, E2E, Performance, Security
- Status: All features manually tested and functional, but automated test suite pending
This commit is contained in:
Matthias Lotz 2025-11-15 18:41:40 +01:00
parent 25ef26534b
commit a7d2d7d6aa

View File

@ -1031,43 +1031,55 @@ export const uploadImageBatch = async (files, metadata, descriptions, consents)
## 🧪 Test-Szenarien
### Acceptance Tests - Phase 1
### Acceptance Tests - Phase 1 (✅ Manuell getestet am 10. Nov 2025)
1. **Upload mit Pflicht-Zustimmung**
- [ ] Upload ohne Werkstatt-Zustimmung wird blockiert
- [ ] Upload mit Werkstatt-Zustimmung funktioniert
- [ ] Consent-Timestamp wird korrekt gespeichert
- [x] Upload ohne Werkstatt-Zustimmung wird blockiert (400 Error)
- [x] Upload mit Werkstatt-Zustimmung funktioniert
- [x] Consent-Timestamp wird korrekt gespeichert
2. **Social Media Consents**
- [ ] Keine Social Media Zustimmung: Upload erfolgreich, nur Werkstatt-Anzeige
- [ ] Eine Plattform: Consent wird korrekt gespeichert
- [ ] Mehrere Plattformen: Alle Consents werden gespeichert
- [ ] Plattform-Liste wird dynamisch geladen
- [x] Keine Social Media Zustimmung: Upload erfolgreich, nur Werkstatt-Anzeige
- [x] Eine Plattform: Consent wird korrekt gespeichert
- [x] Mehrere Plattformen: Alle Consents werden gespeichert
- [x] Plattform-Liste wird dynamisch geladen
3. **Upload-Success Dialog**
- [ ] Gruppen-ID wird angezeigt
- [ ] Copy-to-Clipboard funktioniert
- [ ] Informationstexte sind korrekt
- [x] Gruppen-ID wird angezeigt
- [x] Copy-to-Clipboard funktioniert
- [x] Informationstexte sind korrekt
4. **Moderation Panel**
- [ ] Social Media Badges werden angezeigt
- [ ] Filter nach Consent-Status funktioniert
- [ ] Export-Funktion liefert korrekten CSV/JSON
- [ ] Consent-Details sind sichtbar
- [x] Social Media Badges werden angezeigt (Icons + Tooltips)
- [x] Filter nach Consent-Status funktioniert (Alle: 76, Workshop: 74, Facebook: 2)
- [x] Export-Funktion liefert korrekten CSV
- [x] Consent-Details sind sichtbar
### Acceptance Tests - Phase 2
### Acceptance Tests - Phase 2 (⚠️ Teilweise getestet am 11-15. Nov 2025)
5. **Management Portal**
- [ ] Token-Zugriff funktioniert
- [ ] Consent-Widerruf funktioniert
- [ ] Metadaten können geändert werden
- [ ] Bilder können gelöscht werden
- [ ] Ungültiger Token wird abgelehnt
- [x] Token-Zugriff funktioniert (GET /api/manage/:token)
- [x] Consent-Widerruf funktioniert (Workshop + Social Media)
- [x] Metadaten können geändert werden (Titel/Beschreibung)
- [x] Bilder können gelöscht werden (mit Validierung)
- [x] Ungültiger Token wird abgelehnt (404 Error)
6. **Sicherheit**
- [ ] Token ist kryptisch und nicht erratbar (UUID v4)
- [ ] Rate-Limiting verhindert Token-Brute-Force
- [ ] Audit-Log für alle Änderungen vorhanden
- [x] Token ist kryptisch und nicht erratbar (UUID v4 validiert)
- [x] Rate-Limiting verhindert Token-Brute-Force (10 req/h, 20 failed → 24h block)
- [x] Audit-Log für alle Änderungen vorhanden (management_audit_log)
### Ausstehende systematische Tests
**⚠️ Hinweis**: Obwohl alle Features implementiert und funktional getestet wurden, fehlen noch:
- [ ] Automatisierte Unit-Tests (Jest/Mocha)
- [ ] Automatisierte Integration-Tests (API-Tests)
- [ ] Automatisierte E2E-Tests (Playwright/Cypress)
- [ ] Systematisches Regression-Testing
- [ ] Performance-Tests (Load-Testing für Rate-Limiter)
- [ ] Security-Audit (OWASP-Checks)
**Status**: Alle Features **manuell getestet** und funktionsfähig, aber automatisierte Test-Suite fehlt noch.
## 📊 Datenbank-Beispiele