veza/apps/web/e2e
senke ae586f6134 Phase 2 stabilisation: code mort, Modal→Dialog, feature flags, tests, router split, Rust legacy
Bloc A - Code mort:
- Suppression Studio (components, views, features)
- Suppression gamification + services mock (projectService, storageService, gamificationService)
- Mise à jour Sidebar, Navbar, locales

Bloc B - Frontend:
- Suppression modal.tsx deprecated, Modal.stories (doublon Dialog)
- Feature flags: PLAYLIST_SEARCH, PLAYLIST_RECOMMENDATIONS, ROLE_MANAGEMENT = true
- Suppression 19 tests orphelins, retrait exclusions vitest.config

Bloc C - Backend:
- Extraction routes_auth.go depuis router.go

Bloc D - Rust:
- Suppression security_legacy.rs (code mort, patterns déjà dans security/)
2026-02-14 17:23:32 +01:00
..
.auth Phase 2 stabilisation: code mort, Modal→Dialog, feature flags, tests, router split, Rust legacy 2026-02-14 17:23:32 +01:00
e2e batch 1 2025-12-22 22:00:50 +01:00
fixtures batch 1 2025-12-22 22:00:50 +01:00
mobile-responsive.spec.ts-snapshots [FIX] ISSUE-001 & ISSUE-002: Fix authentication workflow for MVP 2026-01-04 01:44:13 +01:00
playwright-report-visual chore(web): update .env.local and .env.storybook for domain config 2026-02-11 22:20:31 +01:00
test-results-storybook small fixes : cors + login loop 2026-02-07 20:36:48 +01:00
test-results-visual small fixes : cors + login loop 2026-02-07 20:36:48 +01:00
tests Phase 2 stabilisation: code mort, Modal→Dialog, feature flags, tests, router split, Rust legacy 2026-02-14 17:23:32 +01:00
utils improving UI: adding API doc to Developer Page 2026-01-26 14:12:17 +01:00
visual-regression.spec.ts-snapshots [FIX] PROD-003: Corriger imports use-toast → useToast 2026-01-04 01:44:17 +01:00
crud-operations.spec.ts implicit-tasks: fix E2E test syntax errors and verify selectors compatible with Epic 7-11 UI changes 2026-01-16 15:16:53 +01:00
debug-input-focus.spec.ts fix: Corriger URL Swagger et finaliser implémentation DeveloperPage 2026-01-18 13:55:28 +01:00
error-boundary.spec.ts feat: Visual masterpiece - true light mode & premium UI 2026-01-11 02:32:21 +01:00
error-handling.spec.ts stabilisation commit A 2026-01-07 19:39:21 +01:00
global-setup.ts fix(e2e): stabilize auth, smoke, search, playlists specs 2026-02-14 14:02:13 +01:00
navigation.spec.ts stabilisation commit A 2026-01-07 19:39:21 +01:00
performance.spec.ts edge-cases: add performance test for many conversations (100+) 2026-01-16 15:20:54 +01:00
README.md Phase 2 stabilisation: code mort, Modal→Dialog, feature flags, tests, router split, Rust legacy 2026-02-14 17:23:32 +01:00
setup-test-user-role.sh batch 1 2025-12-22 22:00:50 +01:00
setup-test-user-role.sql batch 1 2025-12-22 22:00:50 +01:00
track_lifecycle.spec.ts implicit-tasks: fix E2E test syntax errors and verify selectors compatible with Epic 7-11 UI changes 2026-01-16 15:16:53 +01:00
visual-complete.spec.ts feat(web): UI premium Discord/Spotify-like — tokens, shadows, focus, layout 2026-02-08 17:15:58 +01:00
visual-regression.spec.ts [FE-TEST-014] fe-test: Add visual regression tests 2025-12-25 18:45:01 +01:00

E2E Tests — Parcours critiques et fichiers

Ce document liste les parcours critiques couverts par les tests E2E Playwright et les fichiers associés.

Parcours critiques

Parcours Fichier(s) Description
Auth tests/auth.spec.ts Login, register, logout, route guards, token refresh. Optionnel : 2FA (compte test dédié).
Smoke tests/smoke.spec.ts Login → Upload → Création playlist → Ajout track.
Playlists tests/playlists.spec.ts Création, liste, modification, ajout/suppression de tracks, suppression playlist, recherche.
Search tests/search.spec.ts Navigation vers /search, saisie requête, vérification des résultats (tracks/playlists) ou état vide.
Play tests/play.spec.ts Après login : search → clic sur un track → page track ou player visible (ou état vide si pas de résultats).
Profile tests/profile.spec.ts Affichage profil, informations compte.
Upload tests/upload.spec.ts Upload fichier, upload par chunks.

Prérequis

  • Frontend servi (ex. npm run dev) sur l'URL configurée dans TEST_CONFIG.FRONTEND_URL.
  • Backend API disponible pour auth, search, playlists, upload.
  • Compte de test valide (voir e2e/utils/test-helpers.ts : TEST_USERS.default).

Lancer les E2E

cd apps/web
npm run test:e2e
# ou
npx playwright test

Pour un fichier précis :

npx playwright test e2e/tests/auth.spec.ts

Machine à ressources limitées : lancer un seul spec à la fois et un seul projet (chromium) pour éviter saturation CPU/RAM. Les specs auth, smoke, playlists, search nécessitent que le Backend API soit démarré (sinon les appels API échouent en 500). En CI, la suite complète tourne dans le cloud.

npx playwright test e2e/tests/auth.spec.ts --project=chromium

2FA E2E

Le test « should complete login with 2FA code » dans auth.spec.ts s'exécute uniquement lorsque E2E_2FA_CODE est défini. Pour lancer le test 2FA en CI ou en local :

  • Obligatoire : E2E_2FA_CODE — code TOTP valide au moment de l'exécution (ou code de test si l'env le permet).
  • Optionnel : E2E_2FA_EMAIL — email du compte 2FA (défaut : TEST_USERS.default.email).
  • Optionnel : E2E_2FA_PASSWORD — mot de passe du compte (défaut : TEST_USERS.default.password).

Exemple :

E2E_2FA_CODE=123456 E2E_2FA_EMAIL=user@example.com E2E_2FA_PASSWORD=secret npx playwright test e2e/tests/auth.spec.ts -g "2FA"