TDD (Test-Driven Development)

read time

1 min

Le test-driven development (TDD) est une technique de développement logiciel qui prend à rebours la méthode “traditionnelle”. Elle propose de commencer par écrire les tests unitaires avant de s’attaquer au code source d’un projet.

Le cycle préconisé par TDD comporte cinq étapes :

1. écrire un premier test
  1. 2. vérifier qu'il échoue (ce qui est logique, car le code qu'il teste n'existe pas) ; cet échec confirme que le test est valide
  2. 3. écrire le code minimum suffisant pour passer le test
  3. 4. vérifier que le test passe
  4. 5. puis refactoriser le code, pour améliorer ses performances et sa qualité tout en gardant les mêmes fonctionnalités

Les promoteurs de cette méthode soulignent les avantages suivants :

  • Certitude que les tests seront écrits (par rapport à la méthodologie classique où les tests sont souvent remis à plus tard par les développeurs, par manque de temps, pression des clients pour le développement de nouvelles fonctionnalité ou manque d’intérêt)
  • Nécessité pour le développeur de réfléchir en avance de phase aux détails de sa future implémentation, afin de coder le test ; cette réflexion initiale permet de clarifier la conception, et d’éviter d’écrire du code inutile
  • Filet de sécurité pour éviter les régressions : toutes les fonctionnalités spécifiées du système sont de facto couvertes par des tests
  • Méthodologie poussant à découper les fonctionnalités en petit incréments testables, ce qui est conforme aux préceptes de la méthodologie agile

Ce mode de développement gagne en popularité dans le monde de l’IT, avec des bénéfices reconnus par la grande majorité des développeurs.

Quelques critiques, minoritaires, pointent que cette méthodologie ne s’adapte pas à tous les cas et notamment aux fonctionnalités de petite taille : ceux-ci expliquent que les développeurs TDD ont parfois tendance à écrire du code inutile (puisque les demandes du client évolue ou que le développeur lui-même change d’architecture technique en cours de route).

Publié le 25 oct. 2015

Mis à jour le 28 janv. 2022

clipboardCopier le lien
Ecrit par
Hugo Geissmann
Hugo Geissmann

Les prochains évènements

Le No-Code pour les PM

calendar

31 jan 2022

Découvrir

Comment se lancer dans le No-Code ?

calendar

31 jan 2022

Découvrir

Le No-Code pour construire des back-offices/SaaS

calendar

1 fév 2022

Découvrir

La Product Conf Paris

calendar

9 juin 2022

Découvrir

Filles_ordinateur

Envie de partager tes idées ?


Plus de 20.000 passioné.e.s du Produit viennent sur notre média chaque mois. Retours d’expérience, opinions clivantes, n’hésite pas à nous proposer des contenus.

 

Contacter la rédaction