Question

Qu'est-ce qu'un exemple réel de qualité de TDD en action ?Quels projets open source de petite à moyenne taille dans .net existent qui présentent les meilleures pratiques en matière de TDD et pourraient servir de référence pour bien faire le TDD ?


Je recherche davantage un exemple de projet(s) de respiration vivante qui constitue un bon exemple de TDD.Quelque chose qui compléterait les livres et les références qui expliquent et démontrent le processus de manière isolée.

Quelque chose qui serait utile pour un développeur ambitieux qui souhaite passer du niveau de praticien TDD débutant/intermédiaire...

Était-ce utile?

La solution

Voici quelques exemples :

  • NUnité
  • CodeCampServer L'un des
  • Outils Rhino d'Ayende (par ex.Des moqueries de rhinocéros)
  • ASP.NET MVC
  • Cuyahoga (système CMS)
  • NHibernate courant

Autres conseils

Cela peut ou non être ce que vous recherchez, mais la MS Enterprise Library propose un ensemble complet de tests unitaires (NUnit) dans le cadre de la distribution du code source, je considérerais cela comme un monde assez réel.

Kév

TDD est un processus qui se produit principalement entre les validations dans le référentiel.

Lorsque vous examinez des projets open source, vous ne verrez que des instantanés du code pris lorsqu'un développeur s'engage.

Il ne devrait y avoir aucune différence pratique entre les engagements pris par un développeur qui réalise une bonne conception et implémente de nombreux tests unitaires et un bon développeur qui pratique le TDD.La différence est que le processus TDD exerce une pression sur le développeur pour qu'il réalise une conception propre et implémente de nombreux tests unitaires.

L'examen d'un projet open source Test-Driven vous permettra uniquement de voir le résultat du processus TDD, et non de savoir comment être Test-Driven vous-même.

Pour vraiment l'apprendre, il faut vraiment regarder quelqu'un faire du TDD.Un livre peut aider, mais il est difficile de montrer le processus dans un livre.Il est bien préférable de le voir réalisé en temps réel.La meilleure façon serait de programmer en binôme avec quelqu'un qui est testé.L’idéal serait une démonstration en direct lors d’une conférence ou d’un rassemblement – ​​peut-être avez-vous un groupe d’utilisateurs local ?

À défaut, il existe des démonstrations vidéo en ligne.En voici deux :

Si vous envisagez cela pour un usage personnel de TDD, je ne pense pas que parcourir d'autres projets vous aidera vraiment.Au lieu de cela, vous devriez plonger et simplement le faire, et apprendre au fur et à mesure.

Pour commencer, consultez Cet article sur les tests et comment commencer, et ce livre à propos de TDD par Kent Beck (très simple, facile à comprendre et perspicace).

Je n'ai pas moi-même parcouru toutes les webdiffusions, donc je ne peux pas attester de la façon dont Rob Conery a bien implémenté TDD, mais son Série de vitrines MVC est censé utiliser TDD.

Ron Jeffries a beaucoup de bons articles sur xprogramming.com.Si vous utilisez du C#, recherchez « Aventures en C# ».Ou achetez le livre.

Son style d’écriture couvre la plupart des aspects du TDD, même les mauvais virages que nous sommes destinés à prendre.J'ai appris beaucoup de ses articles au fil des années, même ceux sur les langues les plus exotiques.

Je ferais écho au commentaire de Rasmus selon lequel il est plus utile de regarder quelqu'un faire du TDD.Deux ressources que j'ai trouvées vraiment utiles :

  1. James Shore a une série de vidéos YouTube où il construit un petit logiciel à partir de zéro en utilisant TDD et en enregistrant chaque étape du processus.À mon avis, cela devrait être obligatoire pour quiconque envisage de commencer avec TDD, je ne l'ai découvert que récemment et je suis surpris qu'il n'ait pas plus de visibilité.Il y a 120 vidéos de 15 minutes – cela fait BEAUCOUP de matériel.

  2. Derek Greer de Los Techies a une série de messages en passant par la création d'un jeu de base de tic-tac-toe.C'est également très bien mais ne va évidemment pas aussi en profondeur que la ressource précédente.Je vous le recommande si vous n'avez pas beaucoup de temps.

Il y a environ une semaine, IT Conversations a publié une conférence très intéressante donnée par Kent Beck qui portait sur le TDD (mais abordait également les modèles et la programmation extrême).Rien de « charnu » en ce qui concerne les instructions détaillées sur TDD, mais informatif quand même.Cela vaut vraiment la peine d'être écouté si vous améliorez vos compétences en TDD.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top