2008-10-08 7 views
11

Nous commençons à nous familiariser avec les tests unitaires dans VS 2008 Professional Edition et nous avons atteint ce qui pourrait être un gros problème: il semble impossible de déterminer la couverture de code dans cette édition particulière de VS . Il semble que ce soit uniquement disponible dans VS Team System Development Edition. En d'autres termes, VS 2008 Professional Edition vous permet d'écrire tous les tests unitaires que vous voulez, mais ne fournit AUCUN moyen de vérifier quel code n'a pas de test unitaire associé (ou combien de code est couvert par les tests). Cette observation est-elle correcte?Outils de couverture de code pour VS 2008

Si oui, quelqu'un peut-il recommander un outil tiers pour déterminer la couverture de code? J'ai essayé TestMatrix mais je n'ai pas été impressionné (l'écran de paramétrage masquait les boutons OK et Annuler à 120 DPI, l'exécution de mon ensemble de tests actuel a provoqué un blocage complet de VS). Question subsidiaire: Au lieu d'un outil de couverture tiers, et au lieu de mettre à niveau vers VS Team System Development Edition, serait-il plus logique d'adopter NUnit et de trouver un outil de couverture de code gratuit/bon marché? Nous ne sommes pas encore à fond dans les tests unitaires, et nous voulons choisir une méthode de test qui ne va pas entraver nos efforts sur la ligne ... et ne pas casser la banque.

Répondre

1

J'utilise PartCover pour obtenir des informations de base sur la couverture de code de mes tests NUnit. Alors que l'interface n'est pas l'expérience la plus douce sous le soleil, elle fait le travail et est open source.

+0

J'ai brièvement essayé PartCover mais j'ai eu du mal à comprendre. Est-il uniquement destiné à NUnit (puisqu'il s'agit d'un clone NCover), ou peut-il être utilisé avec les outils de test de MS dans VS 2008? Merci! –

+0

Je crois que vous pouvez l'utiliser pour tester la couverture de tout. Exe, vous pouvez commencer avec PartCover. Mais je ne l'utilise actuellement que pour les tests NUnit. –

0

Je me sers NCover avec NUnit sous VS2008 pendant quelques jours. J'ai trouvé si facile de trouver et de combler les lacunes dans ma couverture de test, j'ai rigolé à haute voix quand NCover apparaît. Un conseil: si vos tests se trouvent dans le même fichier que le code qu'ils testent, ne vous embêtez pas à exécuter NCover à moins que tous vos tests ne passent. Dans le cas contraire, il marquera toutes les accolades de fin des méthodes de test défaillantes comme non couvertes. Cependant, peut-être que c'est juste un indice que je devrais mettre mes tests dans un fichier différent ...

+2

C'est une bonne idée d'avoir vos tests dans un projet/assemblage séparé –

+1

Ouais, vous ne voulez pas que vos tests soient dans le même fichier. Pourquoi gonfler votre version avec des tests unitaires et des dépendances de test? –

+1

Je pense qu'il y a de bons avantages à placer les tests unitaires dans le même fichier que le code qu'ils testent. L'idée ne devrait pas être rejetée sans réflexion. Vous pouvez toujours les exclure du code de production, mais certaines personnes envoient même des tests avec le code de production. Il y a aussi des avantages à cela. –