veza/tests/e2e/COVERAGE_MAP.md
senke 20a16f7cbe test: add comprehensive e2e test suite (34 spec files)
New tests/e2e/ suite covering:
- Auth, navigation, player, tracks, playlists
- Search, discover, social, marketplace, chat
- Accessibility, API, workflows, edge cases
- Routes coverage, forms validation, modals
- Empty states, responsive, network errors
- Error boundary, performance, visual regression
- Cross-browser, profile, smoke, upload
- Storybook, deep pages, visual bugs
- Includes fixtures, helpers, global setup/teardown
- Playwright config and coverage map

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 11:36:22 +01:00

16 KiB

COVERAGE MAP — Suite E2E Veza

Dernière mise à jour : 2026-03-16

Vue d'ensemble

Fichier Tests Domaine Tags
01-auth.spec.ts 15 Authentification @critical
02-navigation.spec.ts 15 Navigation & Layout @critical, @mobile
03-player.spec.ts 10 Lecteur audio @critical
04-tracks.spec.ts 12 Tracks & Upload @critical
05-playlists.spec.ts 8 Playlists CRUD @critical
06-search-discover.spec.ts 13 Recherche & Découverte @critical, @ethical
07-social.spec.ts 9 Social & Profils @critical, @ethical
08-marketplace.spec.ts 10 Marketplace & Commerce @critical
09-chat-notifications-settings.spec.ts 21 Chat, Notifs, Paramètres @critical
10-features.spec.ts 23 Features variées @critical
11-accessibility-ethics.spec.ts 19 WCAG AA & Éthique @a11y, @ethical, @critical
12-api.spec.ts 10 API Backend @critical
13-workflows.spec.ts 14 Parcours complets @critical
14-edge-cases.spec.ts 33 Edge cases & Négatifs
15-routes-coverage.spec.ts 44 Couverture routes @feature-routes
16-forms-validation.spec.ts 47 Validation formulaires @feature-forms, @critical
17-modals-dialogs.spec.ts 22 Modales & Dialogs @feature-modals
18-empty-states.spec.ts 14 États vides @feature-empty-states
19-responsive.spec.ts 14 Responsive mobile @mobile, @feature-responsive
20-network-errors.spec.ts 10 Erreurs réseau @feature-errors
TOTAL 374 20 domaines 5 browsers

Exécution

# Lancer tous les tests
npm run e2e

# Lancer et générer le rapport d'audit
npm run e2e:audit

# Tests critiques uniquement (~30 tests, <2min)
npm run e2e:critical

# Lister sans exécuter
npm run e2e:list

Couverture par feature

AUTH (/features/auth/)

Aspect Couvert Fichier(s) Notes
Login UI (email/password) 01, 13 Vrais sélecteurs (#register-email, label="Email")
Login erreurs (mauvais mot de passe) 01 Vérifie rôle alert
Register (tous champs) 01 #register-username/email/password/password_confirm/terms
Register validation (email invalide) 01
Register validation (mot de passe court) 01
Register email existant 01
Forgot password page 01 Lien et page /forgot-password
OAuth boutons 01 Google, GitHub, Discord, Spotify
Redirection si non-auth 01, 14 /dashboard → /login
Token JWT (httpOnly cookie) 01 Vérifie auth-storage Zustand
Déconnexion 01, 13 Menu user → logout
2FA setup 09 Section dans settings
Session persistence 13 Page refresh
Login formulaire vide 14 Edge case
Register formulaire vide 14 Edge case
Verify email page Nécessite token email
Reset password page Nécessite token email
Account lockout (5 tentatives) Nécessite 5 requêtes rapides

PLAYER (/features/player/)

Aspect Couvert Fichier(s) Notes
Play/Pause toggle 03 aria-label="Lire"/"Mettre en pause"
Track info (titre/artiste) 03 section aria-label="Track info"
Progress bar (seek) 03 role="slider" aria-label="Progression"
Volume control 03 role="slider" aria-label="Volume"
Mute/Unmute 03
Next/Previous 03 data-testid="next-button"/"prev-button"
Queue panel 03 aria-label="Show queue"
Keyboard (Espace) 03
Player persiste entre pages 13
Shuffle toggle Pas de sélecteur unique fiable
Repeat modes Pas de sélecteur unique fiable
Crossfade Nécessite audio réel
Picture-in-Picture API navigateur requise
AirPlay/Cast Hardware requis

TRACKS (/features/tracks/)

Aspect Couvert Fichier(s) Notes
Track cards (découverte) 04 role="article"
Track detail page 04 /tracks/:id
Like/Unlike toggle 04 aria-label="Ajouter aux favoris"
Commentaires 04
Upload (modal library) 04 /library avec modal upload
Métadonnées (genre, durée) 04
Waveform 04 Barres div dans progress bar
Repost 04 Bouton repost
Track inexistant (404) 14 /tracks/nonexistent
Upload validation 04 Soumettre sans fichier
Upload fichier invalide Nécessite fixture audio
Download track

PLAYLISTS (/features/playlists/)

Aspect Couvert Fichier(s) Notes
Liste playlists 05 /playlists
Créer playlist 05 Formulaire create
Ouvrir playlist 05 /playlists/:id
Modifier playlist 05 Bouton edit
Supprimer playlist 05 Bouton delete
Collaboration/partage 05 Bouton share
Drag & drop réordonnement 05 Handles GripVertical
Playlist inexistante (404) 14 /playlists/nonexistent
Export (JSON/CSV/M3U) 05 Menu options
Ajouter track Nécessite workflow complexe
Playlist collaborative temps réel Nécessite WebSocket
Aspect Couvert Fichier(s) Notes
Input recherche header 06 [role="search"] input
Recherche avec résultats 06 ?q=...
Onglets catégories 06 All, Tracks, Artists, Playlists
Recherche vide 06, 14 Pas de crash
Autocomplete 06 Suggestions dropdown
Caractères spéciaux (XSS) 14