Je regarde une petite base de code C # (.NET 4.0, certains Silverlight) (~ 70kLOC générée) qui a une très faible couverture de test. Le code lui-même fonctionne en ce qu'il a réussi les tests d'acceptation des utilisateurs, mais il est fragile et dans certains domaines pas très bien pris en compte. Je voudrais ajouter une couverture de test unitaire solide autour du code hérité en utilisant les suspects habituels (NMock, NUnit, StatLight pour les bits Silverlight).
Mon approche normale est de commencer à travailler sur le projet, les tests unitaires et la refactorisation, jusqu'à ce que je sois satisfait de l'état du code. Je l'ai fait plusieurs fois dans le passé, et cela a bien fonctionné.
Cependant, cette fois, je pense utiliser un générateur de test (en particulier Pex ) pour créer le framework de test, puis l'étoffer manuellement.
Ma question est la suivante: avez-vous utilisé des générateurs de tests unitaires dans le passé lorsque vous avez commencé à travailler sur une base de code héritée, et si oui, les recommanderiez-vous?
Ma crainte est que les tests générés manqueront les nuances sémantiques de la base de code, conduisant à la situation redoutée d'avoir des tests pour le bien de la métrique de couverture, plutôt que des tests qui expriment clairement le comportement prévu dans le code.