Test Driven Development TDD
Le Test Driven Developpement (TDD),développement conduit par les tests est une méthode XP ( Extreme programming ) consistant à réaliser les tests unitaires en amont de l'implémentation d'une application.
La méthode peut sembler contraignante, mais elle possède des avantages certains :
Elle oblige à penser et à structurer l'implémentation future, avant sa réalisation effective.
Elle garantit que l'application réalisée le sera toujours sans bogues, quelque soit son état d'avancement. (exécution permanente du plan de tests) ⇒ code valide en toutes circonstances.
-
Comme beaucoup des méthodes XP, elle introduit un aspect ludique supplémentaire, participant à la motivation de l'équipe de développement ⇒course au nombre de fonctionnalités implémentées et dont le test passe au vert.
Étapes de réalisation :
Penser une série de fonctionnalités à tester
Ecrire les tests correspondants
Vérifier qu'ils échouent (ils ne passent pas puisque le code correspondant n'existe pas)
Pour chaque test, implémenter la fonctionnalité associée
Vérifier que le test passe
Vérifier après chaque implémentation que l'ensemble des tests qui passaient passent toujours (non régression) en exécutant l'ensemble du plan de tests.
Refactoriser le code pour améliorer son efficacité, en conservant la même fonctionnalité.
Passer à la fonctionnalité suivante.
Pour chaque test, il est primordial de vérifier qu'il comporte tous les éléments permettant la réalisation complète de la fonctionnalité associée
voir Tests unitaires