- Je prendre une autre approche:
Quelle assurance avez-vous que votre code est correct? Ou qu'il ne rompt pas l'hypothèse X lorsque quelqu'un sur votre équipe de changements func1()? Sans les tests unitaires vous garder "honnête", je ne suis pas sûr que vous avez beaucoup d'assurance.
La notion de maintien de tests de mise à jour est intéressante. Les tests eux-mêmes n'ont pas souvent de changer. J'ai eu 3 fois le code de test par rapport à la production de code, et le code de test a été changé très peu. Il est, cependant, ce qui me permet de bien dormir la nuit et la chose qui me permet de dire au client que j'ai confiance que je peux mettre en œuvre l'axe des fonctionnalités sans casser le système.
Peut-être dans le monde universitaire, il y a des preuves, mais je n'ai jamais travaillé ailleurs dans le monde commercial, où tout le monde aurait à payer pour un tel test. Je peux vous dire, cependant, qu'il a bien fonctionné pour moi, a pris peu de temps pour s'habituer à l'infrastructure de test et test écrit m'a fait vraiment penser à mes exigences et la conception, beaucoup plus que j'ai jamais fait lorsque vous travaillez sur des équipes qui écrit pas de tests.
Voici où il paie pour lui-même: 1) Vous avez confiance dans votre code et 2) Vous détecter les problèmes le plus tôt que vous le feriez autrement. Vous n'avez pas l'assurance de la qualité gars dire "hey, vous n'avez pas pris la peine vérification de limites xyz() de la fonction, avez-vous? Il n'a pas de bug parce que vous avez trouvé il y a un mois. Ce qui est bon pour lui, bon pour vous, bon pour la société et bon pour le client.
Clairement, c'est anecdotique, mais il a fait des merveilles pour moi. Pas sûr que je peux vous fournir des feuilles de calcul, mais mon client est heureux et c'est le but de la fin.