Le Test Driven Development (TDD) est une pratique de développement qui consiste à écrire les tests unitaires AVANT d'écrire le code de production.
Cycle TDD (Red-Green-Refactor) :
- Red : Écrire un test qui échoue
- 🟢 Green : Écrire le code minimal qui passe
- Refactor : Améliorer le code sans casser les tests
- Répéter
Avantages :
- Couverture de tests élevée (90%+)
- Bugs détectés tôt
- Design meilleur (code testable = code modulaire)
- Documentation vivante via les tests
- ️ Refactoring sécurisé
Inconvénients :
- ️ Plus lent au début
- Courbe d'apprentissage
"Test first, code second"