Test Driven Development

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.

L'utilisation de TDD permet en outre d'estimer de manière plus précise l'état d'avancement du développement d'un projet.

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


Wikimedia Foundation. 2010.

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

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Test-driven development — (TDD ) is a software development technique consisting of short iterations where new test cases covering the desired improvement or new functionality are written first, then the production code necessary to pass the tests is implemented, and… …   Wikipedia

  • Test-Driven development — Als testgetriebene Entwicklung (auch testgesteuerte Programmierung, engl. test first development oder test driven development (TDD), manchmal auch scherzhaft Extreme Testing) ist eine Methode, die häufig bei der agilen Entwicklung von… …   Deutsch Wikipedia

  • Test-Driven Development — Разработка через тестирование (англ. test driven development)  техника программирования, при которой модульные тесты для программы или её фрагмента пишутся до самой программы (англ. test first development) и, по существу, управляют её разработкой …   Википедия

  • Test-Driven Development by Example — Test Driven Development: By Example is a book about a software development technique by Kent Beck.Beck s concept of test driven development centers on two basic rules:#Never write a single line of code unless you have a failing automated test.… …   Wikipedia

  • Test first development — Als testgetriebene Entwicklung (auch testgesteuerte Programmierung, engl. test first development oder test driven development (TDD), manchmal auch scherzhaft Extreme Testing) ist eine Methode, die häufig bei der agilen Entwicklung von… …   Deutsch Wikipedia

  • Behavior Driven Development — (or BDD) is an Agile software development technique that encourages collaboration between developers, QA and non technical or business participants in a software project. It was originally conceived in 2003 by Dan North D.North,… …   Wikipedia

  • Behavior driven development — (ou BDD) est une méthode Agile qui encourage la collaboration entre les développeurs, les responsables qualités, les intervenants non techniques et les entreprises participants à un projet de logiciel. Il a été conçu en 2003 par Dan North comme… …   Wikipédia en Français

  • Behavior Driven Development — (ou BDD) est une méthode Agile qui encourage la collaboration entre les développeurs, les responsables qualités, les intervenants non techniques et les entreprises participants à un projet de logiciel. Il a été conçu en 2003 par Dan North comme… …   Wikipédia en Français

  • Tester Driven Development — is an Anti pattern in software development. It should not be confused with Test Driven Development. It refers to any software development project where the Software testing phase is too long. The testing phase is so long that the requirements may …   Wikipedia

  • Design-driven development — (D3) is an agile based process for creating innovative requirements to build better solutions. It works closely with SCRUM and Extreme Programming (XP) for managing and implementing those requirements. Also it can work with non agile processes… …   Wikipedia

Share the article and excerpts

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