Démarrer Cypress sur projet Angular [2h]
- Choisir E2E vs Component Testing pour Angular
- Installer Cypress et configurer baseUrl, env, viewport
- Comprendre spec files, support, commands, fixtures
- Sécuriser les sélecteurs avec data-cy et page objects légers
- (ATELIER) Initialiser Cypress sur une app Angular
Commandes essentielles et assertions robustes (2h30)
- Utiliser cy.get, contains, within, each, should
- Gérer chaînes asynchrones, retries, timeouts, alias
- Manipuler formulaires Angular: inputs, select, datepicker, validation
- Tester routing Angular: guards, redirections, URL params
- Travaux pratiques : Créer trois tests E2E sur parcours authentification et navigation
Données, mocks API et synchronisation (2h30)
- Intercepter appels HTTP avec cy.intercept et alias
- Utiliser fixtures JSON et générateurs de données contrôlées
- Simuler erreurs réseau, latence, codes HTTP, timeouts
- Stabiliser tests: attente sur alias, évitement wait arbitraire
- Travaux pratiques : Stubber une API et valider états loading, succès, erreur
Tests bout en bout Angular orientés métier (3h00)
- Concevoir scénarios E2E: panier, recherche, CRUD, rôles
- Gérer sessions: cookies, localStorage, refresh token
- Tester composants UI complexes: modals, tables, pagination
- Paramétrer environnements: dev, recette, feature flags
- (ATELIER) Formaliser une stratégie de tests sur user stories
- Travaux pratiques : Automatiser un parcours CRUD complet avec contrôles de sécurité
Débogage, fiabilité et maintenance [2h]
- Utiliser Runner, snapshots, vidéos, logs et console
- Diagnostiquer flaky tests: sélecteurs, états partagés, timings
- Factoriser: custom commands, hooks, data builders, fixtures
- Gérer tests parallèles, isolation, nettoyage de données
- (ATELIER) Stabiliser un test flaky sur application Angular
CI/CD, tests visuels et comparaison outils (2h)
- Exécuter en headless: reporters, artifacts, rétention logs
- Positionner Cypress vs Selenium WebDriver: forces et limites
- Mettre en place tests visuels: snapshots, seuils, revue
- Travaux pratiques : Industrialiser l’exécution CI et publier un rapport de tests