veza/COMMANDES_PLAYWRIGHT_AUTH.md
senke d0f403018d [FIX] ISSUE-001 & ISSUE-002: Fix authentication workflow for MVP
ISSUE-001: Auto-verify email on registration
- Set IsVerified: true in Register() to allow immediate login
- Removes blocking email verification requirement for MVP

ISSUE-002: Generate tokens in Register
- Modified Register() signature to return (*User, *TokenPair, error)
- Added JWT token generation after user creation
- Store refresh token in database
- Updated handlers to use returned tokens
- Added nil checks for JWTService and refreshTokenService

Changes:
- veza-backend-api/internal/core/auth/service.go
- veza-backend-api/internal/handlers/auth.go
- veza-backend-api/internal/core/auth/handler.go
- REAL_ISSUES_TODOLIST.json

Note: Backend needs to be recompiled and restarted for changes to take effect.
2026-01-04 01:44:13 +01:00

3.4 KiB

Commandes Playwright - Tests Auth

📋 Résumé des tests auth disponibles

Les tests d'authentification sont dans :

  • apps/web/e2e/auth.spec.ts - Tests d'authentification de base
  • apps/web/e2e/auth-flow.spec.ts - Tests du workflow auth complet
  • apps/web/e2e/profile.spec.ts - Tests de gestion de profil (modification username, bio, password, avatar)

🚀 Commandes pour lancer les tests

1. Tous les tests auth (recommandé)

cd apps/web
npx playwright test e2e/auth.spec.ts e2e/auth-flow.spec.ts e2e/profile.spec.ts

2. Avec rapport HTML

cd apps/web
npx playwright test e2e/auth.spec.ts e2e/auth-flow.spec.ts e2e/profile.spec.ts --reporter=html
# Ouvrir le rapport : npx playwright show-report

3. Un seul fichier de test

cd apps/web
npx playwright test e2e/auth.spec.ts
# ou
npx playwright test e2e/auth-flow.spec.ts
# ou
npx playwright test e2e/profile.spec.ts

4. Un test spécifique (par nom)

cd apps/web
npx playwright test e2e/auth.spec.ts -g "should login successfully"

5. Mode UI (interactif)

cd apps/web
npx playwright test e2e/auth.spec.ts --ui

6. Un seul navigateur (plus rapide)

cd apps/web
npx playwright test e2e/auth.spec.ts --project=chromium

7. Mode debug (step by step)

cd apps/web
npx playwright test e2e/auth.spec.ts --debug

8. Avec retry automatique

cd apps/web
npx playwright test e2e/auth.spec.ts --retries=2

⚙️ Prérequis

1. Backend doit être démarré

cd veza-backend-api
LOG_LEVEL=DEBUG go run cmd/api/main.go

2. Frontend doit être démarré

cd apps/web
npm run dev

3. Installer les navigateurs Playwright (si nécessaire)

cd apps/web
npx playwright install
# Pour installer les dépendances système (Linux)
sudo npx playwright install-deps

📊 Résultats des derniers tests

Statut : 42 passés / 33 échoués / 9 ignorés

Tests qui passent

  • Login avec credentials valides
  • Logout
  • Validation des champs de formulaire
  • Persistance de l'authentification après refresh
  • Affichage du profil
  • Mise à jour du username (avec limitation mensuelle)
  • Validation password mismatch

Tests qui échouent

  • Register : Le register fonctionne mais le message de succès n'est pas détecté par les tests
  • WebKit : Nécessite sudo npx playwright install-deps pour installer les dépendances système
  • SessionStorage : Certains tests échouent à cause d'accès sessionStorage bloqué

🔍 Voir les résultats détaillés

# Rapport HTML
cd apps/web
npx playwright show-report

# Logs détaillés
cat /tmp/playwright-auth-tests.log | grep -E "passed|failed|Error"

🐛 Debug d'un test spécifique

cd apps/web
# Mode debug interactif
npx playwright test e2e/auth.spec.ts -g "should register" --debug

# Mode headed (voir le navigateur)
npx playwright test e2e/auth.spec.ts -g "should register" --headed

# Avec trace
npx playwright test e2e/auth.spec.ts -g "should register" --trace on

📝 Notes importantes

  1. Rate Limiting : Les tests utilisent 1 worker pour éviter le rate limiting backend
  2. Global Setup : Un utilisateur de test est créé automatiquement via e2e/global-setup.ts
  3. Timeout : 60 secondes par défaut (peut être augmenté si nécessaire)
  4. Storage State : L'état d'authentification est sauvegardé dans e2e/.auth/user.json