Maîtriser les tests end-to-end avec Cypress
Programme
Introduction au testing
- Pourquoi tester ?
- Les différents types de test
- Les stratégies de testing : cornet de glace, pyramide vs rayon de miel
Cypress Core Features
- Developer eXperience
- Rapidité
- Debuggabilité
- Retry-ability
- Cohérence et stabilité
Premier Test
- Mise en place de Cypress
- Mise en place de Cypress avec Nx
- Exercice : Implémenter et lancer un premier test
Fondamentaux Cypress
- Les commandes
- Les assertions
- Exercice : Interagir avec le DOM
- Debugging
- Organisation des tests
- Exercice : Interagir avec les formulaires
- Variables & aliases
Cypress Network Testing
- Avantages et inconvénients des différentes techniques
- Exercice : Intercepter les requêtes
- Exercice : Utiliser des fixtures
- Exercice : Utiliser une sandbox
Retour vers le future
- Exercice : Jouer avec le timer
“Keeping Tests Healthy with DOM Distancing”
- Tests attributes
- Cypress Custom Commands
- Page objects
- Test Harnesses
Test Harnesses
- L’histoire des Test Harnesses
- Comment cela fonctionne
- Exercice : Utilisation des test harnesses
- Exercice : Implémentation de test harnesses
Cypress Component Testing
- Brisons les frontières de l’”isolated testing” avec Cypress Component Testing
- Exercice : Isoler et tester un composant avec Cypress
- Exercice : Réutiliser le test harness
Tester les Interactions
- Stubs & Spies
- Exercice : “Overrider” les dépendances avec l’injection de dépendance et les spies
- Exercice : Tester la communication à base de props, inputs & outputs
Visual Regression Testing
- Tester la présentation
- Détecter les régressions visuelles avec Cypress Component Testing & Percy
Automatisation
- Configuration de la CI
- Reporters
- Cypress Dashboard
- Parallelization