Tests & Qualitätssicherung
Unit-Tests mit Bun Test und End-to-End-Tests mit Playwright.
Die Specs in apps/web/tests/ laufen mit Playwright und Chromium. Unit- und Vertragstests nutzen den vorhandenen Bun-Testbefehl.
bun run test
bun run test:i18n-parity
bun run agent:i18n --strict
bun run build
bun run e2eFalls Chromium fehlt, führen Sie bun x playwright install chromium im Verzeichnis apps/web aus.
Browser-Testserver
Erstellen Sie zuerst den Build: Playwright startet bun run start --port 3107 und liefert den Produktions-Build unter http://127.0.0.1:3107 aus. Es startet keinen Entwicklungsserver und verwendet vorhandene Server nicht automatisch. Für einen bewusst gestarteten Testserver setzen Sie PLAYWRIGHT_TEST_BASE_URL auf dessen URL.
bun run --cwd apps/web e2e:uiDie Smoke-Tests prüfen Marketing, Anmeldeformulare, Preise, Sprach-Fallbacks und Weiterleitungen der Dokumentation sowie die Avatarauswahl. Admin-, Team-, Feedback- und Einstellungstests benötigen zusätzlich eine isolierte Datenbank und angemeldete Testbenutzer.
Tests mit Datenbank
Datenbank-Fixtures sind standardmäßig deaktiviert. Der gemeinsame Guard in packages/database/test-support/review-database.ts verlangt REVIEW_DATABASE_TESTS=true und eine PostgreSQL-URL mit 127.0.0.1, Datenbank vibekit_audit und Port 55439 (oder einem expliziten REVIEW_DATABASE_PORT). Erstellen und migrieren Sie vorher eine wegwerfbare Datenbank. Appserver und Tests müssen dieselbe Datenbank und dasselbe Auth-Secret verwenden.
Setzen Sie für Server und Tests MOCK_SERVICES=true. Die Fixtures erstellen und löschen eigene Benutzer und Datensätze; verwenden Sie keine Produktions- oder gemeinsam genutzten Daten. Browser-Tests belegen keine echte Zahlungs-, E-Mail-, Speicher- oder KI-Anbindung.