TDD

TDD

Test Driven Development

Le Test Driven Development (TDD) ou en Français développement piloté par les tests est une méthode de développement de logiciel qui préconise d'écrire les tests unitaires avant d'écrire le code source d'un logiciel.

Sommaire

Le cycle de TDD

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

  1. écrire un premier test ;
  2. vérifier qu'il échoue (car le code qu'il teste n'existe pas), afin de vérifier que le test est valide;
  3. écrire juste le code suffisant pour passer le test,
  4. vérifier que le test passe,
  5. puis refactoriser le code, c'est-à-dire l'améliorer tout en gardant les mêmes fonctionnalités.

Interêt

Ces tests permettent aussi de préciser les spécifications du code, et donc son comportement ultérieur en fonction des situations auxquelles il sera exposé. Ce qui facilite la production d'un code valide en toutes circonstances. On obtient donc un code plus juste et plus fiable.

En écrivant les tests d'abord, on utilise le programme avant même qu'il existe. On s'assure ainsi que le code produit est testable unitairement. Il est donc impératif d'avoir une vision précise de la manière dont on va utiliser le programme avant même d'envisager son implémentation. Cela évite souvent des erreurs de conception dues à une précipitation dans l'implémentation avant d'avoir défini les objectifs.

De plus, le fait d'avoir des tests augmente la confiance en soi du programmeur lors de la refactorisation du code : il sait qu'à un moment donné les tests ont réussi. Il peut ainsi se permettre des changements radicaux de design en étant sûr, à la fin, d'avoir un programme se comportant toujours de la même façon (si les tests réussissent toujours).

L'utilisation de TDD permet la construction conjointe du programme et d'une suite de tests de non-régression.

Voir aussi

Articles connexes

Bibliographie

  • (en) Kent Beck, Test Driven Development: By Example, Addison-Wesley, 2002, 240 p. (ISBN 0-321-14653-0) 
  • (en) Lasse Koskela, Test Driven: TDD and Acceptance TDD for Java Developers, Manning, 2007, 470 p. (ISBN 1-932-39485-0) 

Liens externes

Ce document provient de « Test Driven Development ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article TDD de Wikipédia en français (auteurs)

Игры ⚽ Поможем сделать НИР

Regardez d'autres dictionnaires:

  • TDD — [< TDD, a trademark] abbrev. telecommunications device for the deaf …   English World dictionary

  • TDD — can stand for:* Technical design document, a low level type of design document * Telecommunications device for the deaf, a device for text communication along a telephone line * Test driven development, a type of software development model *… …   Wikipedia

  • TDD — Die Abkürzung TDD bezeichnet: engl. time division duplex, ein Begriff aus der Kommunikationstechnologie, siehe Duplex (Nachrichtentechnik) Test Driven Development, eine Methode zur Entwicklung eines Computerprogramms Telecommunications device for …   Deutsch Wikipedia

  • Tdd — Desarrollo guiado por pruebas, o Test driven development (TDD) es una técnica de programación enfatizada en la programación extrema. Esencialmente la técnica implica el escribir primero sus pruebas y luego implementar el código para ejecutarla.… …   Enciclopedia Universal

  • TDD (télécommunications) — Le Duplex par séparation temporelle (en anglais, Time Division Duplex, TDD) est une technique permettant à un canal de télécommunication utilisant une même ressource de transmission (un canal radio par exemple) de séparer dans le temps l émission …   Wikipédia en Français

  • TDD — target desired ground zero (DGZ) designator; time definite delivery …   Military dictionary

  • TDD — abbreviation telecommunications device for the deaf …   New Collegiate Dictionary

  • TDD — Разработка через тестирование (англ. test driven development) Дуплексный канал с временным разделением (англ. time division duplex) …   Википедия

  • TDD — telecommunications device for the deaf. * * * …   Universalium

  • TDD — Test Driven Development (Computing » Software) ** Telecommunications Device for the Deaf (Academic & Science » Electronics) * Time Division Duplex (Academic & Science » Electronics) * Total Demand Distortion (Academic & Science » Electronics) *… …   Abbreviations dictionary

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”