Tester son code¶
Pyramide des tests, TDD, BDD, ATDD et property-based testing — les méthodes de test dans l'ordre du cycle de vie.
graph LR
A["Pyramide"] --> B["TDD"]
B --> C["BDD"]
C --> D["ATDD"]
D --> E["Property-Based"]
E --> F["Integration & E2E"]
F --> G["Couverture & Mutation"] Ce que vous allez apprendre¶
À la fin de ce tutoriel, vous serez capable de :
- Comprendre la pyramide des tests et ses anti-patterns
- Pratiquer le cycle TDD Red/Green/Refactor et l'utiliser comme outil de conception
- Écrire des spécifications executables en BDD avec le langage Gherkin
- Définir des tests d'acceptation avant le développement (ATDD)
- Appliquer le property-based testing pour découvrir des bugs que les tests par exemples manquent
- Mettre en place des tests d'intégration et E2E fiables
- Mesurer la qualité des tests avec la couverture et le mutation testing
Prérequis¶
| Prérequis | Détail |
|---|---|
| Un langage maîtrise | Python, JavaScript, Java ou Go (les exemples couvrent plusieurs langages) |
| Tests unitaires | Savoir écrire un test basique avec un framework de test |
| Git | Branches et commits (voir Versionner) |
Parcours¶
| Section | Contenu |
|---|---|
| Pyramide des tests | Niveaux de test, coût vs confiance, anti-patterns |
| TDD | Red/Green/Refactor, baby steps, design emergent |
| BDD | Spécifications executables, Gherkin, living documentation |
| ATDD | Tests d'acceptation, collaboration PO/dev/QA |
| Property-Based Testing | Propriétés vs exemples, génération, shrinking |
| Integration et E2E | Contrats, API testing, tests UI, environnements éphémères |
| Couverture et mutation | Métriques, limites de la couverture, mutation testing |