Il semble une vérité absolue dans la communauté de développement que Unit Test est un must, et vous devriez l'ajouter tout ce qu'il coûte (je sais que ce n'est pas 100% comme ça). Laissez-moi jouer l'avocat du diable ici.Unit Test application de production stable
La direction veut introduire des tests unitaires dans l'espoir de minimiser les erreurs de développement de régression dans chaque cycle de développement. < - Voici où je pense que nous pouvons utiliser le mauvais remède. Il s'agit d'une application web MVC, avec un bon niveau de découplage mais avec un vaste code .js difficilement testable, des procédures stockées, etc. Souvent, les erreurs de régression se produisent en raison d'erreurs d'implémentation ou de fusion.
Donc, je ne demande pas comment ajouter Unit Testing à un code existant, qui est abondamment répondu dans le bas du lien. Mon plan initial était de construire des tests d'intégration avec de nombreux scénarios, qui couvriraient l'application «entière». Il semble plus précieux que 5000+ tests unitaires. Ensuite, nous pourrions essayer d'ajouter des tests unitaires au fur et à mesure et nous pourrions voir le bénéfice se prouver, si c'est vraiment le cas. En outre, certains des avantages des tests unitaires me semblent vagues, ils vous permettent de remplacer les frameworks sans casser l'application, et vous permettent de refactoriser le code sans casser l'application.
Maintenant, je demande:
Réduit-elle efficacement les erreurs de régression?
Pouvez-vous écrire des tests unitaires sans réécrire l'application de manière substantielle?
Pouvez-vous promettre que le code de refactoring ne génèrera pas de nouveaux bogues coûteux? (Je sais que ce n'est pas une question valide) Comment expliquez-vous aux entreprises que vous avez cassé le refactoring de l'application?
Qu'en est-il de l'historique du code? Parfois, il est très important pour l'audit de savoir pourquoi du code a été introduit et que le refactoring perd cette valeur. Si vous êtes chanceux, vous ne le trouverez que très longtemps dans le contrôle de la source.
Je sais que vous lisez ceci et je suis un de ces gens fermés qui ne changera pas d'opinion, je promets que je ne suis pas! À la fin de la journée, nous avons besoin de beaucoup plus de stabilité que d'éviter une poignée de défauts ré-ouverts. Et j'aimerais trouver le chemin le plus efficace pour commencer.
Dernier point mais non le moindre, j'ai lu cet autres discussions qui est génial.
S'il vous plaît partager vos pensées.
Merci
Salut, merci beaucoup pour cette réponse. C'est bon d'entendre quelqu'un qui l'a vécu. Et j'ai certainement quelques-uns à emporter pour descendre la route d'essai de l'unité :) –