Que sont TDD et ATDD ?

Dans cet article, nous soulignons les similitudes et les différences entre deux méthodes de test populaires communément appelées TDD et ATDD.

TDD signifie développement piloté par les tests, tandis que ATDD signifie développement piloté par les tests d’acceptation. Comprendre le fonctionnement de ces deux approches de test est essentiel pour les professionnels du test et ce post sera une amorce pour vous permettre de commencer votre découverte des deux. Vous comprendrez le TDD par rapport à l’ATDD.

Qu’est-ce que le développement piloté par les tests (TDD) ?

Le TDD est un système de développement de logiciels suivant les principes de l’Extreme Programming (XP), cependant, au fil du temps, il a essaimé en tant que technique indépendante de développement de logiciels.

Dans le TDD, les tests unitaires sont effectués sur le code source directement.

Dans un premier temps, le testeur écrit un cas de test automatisé qui définit la fonction souhaitée que le système devrait idéalement exécuter, mais conçoit volontairement le cas de test de manière à ce qu’il ne puisse pas être rempli par le système dans son état actuel.

Dans un deuxième temps, le développeur prend note des raisons pour lesquelles le système n’a pas satisfait au test et écrit le code nécessaire pour remanier le système et lui permettre de le passer au deuxième essai. Ce processus est résumé dans le graphique ci-dessous.

développement piloté par les tests

Le processus TDD se poursuit de cette manière, en zigzaguant entre l’échec et le succès, de telle sorte que chaque itération pousse le système le à ses limites et l’aide ensuite à les surmonter grâce au feedback généré.

Le TDD est une expérience d’échec volontaire et il faut pas mal de courage pour se faire à cette technique contre-intuitive. Cependant, une fois que vous l’aurez fait, vous serez récompensé par une méthode simple mais très efficace pour combattre la peur de l’échec pendant les tests tout en améliorant le travail que vous faites.

Qu’est-ce que le développement piloté par les tests d’acceptation (ATDD) ?

L’ATDD est une méthode collaborative de test qui oblige toutes les personnes impliquées dans la création de nouveaux logiciels (par ex.par exemple, les testeurs, les développeurs et les utilisateurs) à définir en équipe les critères d’acceptation que le système doit remplir dans les premières étapes du développement.

L’intérêt de cette étape est de s’assurer que toutes ces parties prenantes sont d’accord sur les principaux objectifs du projet, notamment en termes de fonctionnalités que l’utilisateur final peut attendre. Au cours de cette phase de l’ATDD, des techniques telles que les user personas et les user stories peuvent être très utiles.

Lorsque les tests d’acceptation sont finalement exécutés sur le système, les défaillances sont notées et les développeurs vont alors remanier les composants défectueux en écrivant le code nécessaire pour satisfaire les critères d’acceptation au prochain essai.

Ce processus est effectué de manière itérative, généralement à la fin de chaque sprint, jusqu’à ce que le produit final soit prêt à être déployé. Le graphique ci-dessous explique cela.

le développement piloté par les tests d'acceptation

L’ATDD fournit à l’équipe une vision plus claire de la façon dont le produit final fonctionnera, ce qui permet à chacun de rester concentré sur les objectifs à long terme plutôt que de se perdre dans les lignes de code individuelles.

En résumé

Vous avez maintenant une bonne compréhension des différences fondamentales entre TDD et ATDD. Ces deux méthodes de test sont étroitement liées, cependant ATDD inclut également les tests d’acceptation dans le processus et accorde plus d’importance à la collaboration de l’équipe que TDD.

Ces deux approches s’intègrent parfaitement aux principes agiles car elles encouragent toutes deux la collecte de feedbacks pour construire sur vos erreurs précédentes. Comme vous remaniez continuellement le système et abordez les problèmes auxquels vous avez été confronté lors de l’essai précédent, ces méthodes vous aident à développer un produit final de plus grande valeur de manière incrémentielle.

Rejoignez 60 000+ Abonnés

Pour les derniers blogs, les mises à jour de l’industrie et des conseils exclusifs.

*Votre email est en sécurité avec nous, nous détestons également les spams

.

Leave a Reply