2017-10-20 54 views
1

J'ai ajouté une tâche de test Visual Studio à ma définition de génération et à la couverture de code activée. Cela fonctionne, mais il inclut également des dépendances lors du comptage des blocs, ce qui rend le résultat inutile. J'utilise le coureur de test Visual Studio xUnit.netComment puis-je exclure les dépendances de la couverture de code?

Par exemple, lors de l'analyse de couverture de code dans Visual Studio, j'ai le résultat suivant:

  • Résumé: 13 blocs non couverts, 38 blocs couverts
  • foo.dll: 13 blocs ne sont pas couverts, 20 blocs couverts
  • foo.test.dll: 0 blocs non couverts, 18 blocs couverts

Lors du téléchargement du rapport de couverture de code de VSTS, Je le résultat suivant:

  • Résumé: 6769 blocs non couverts, 205 blocs couverts
  • fluentassertions.core.dll: 5639 blocs non couverts, 155 blocs couverts
  • fluentassertions.dll: 1117 blocs non couverts , 12 blocs couverts
  • foo.dll: 13 blocs ne sont pas couverts, 20 blocs couverts
  • foo.test.dll: 0 blocs ne sont pas couverts, 18 blocs couverts

Ceci est illustré sur VSTS:

screenshot of code coverage report

FluentAssertions est uniquement référencé et utilisé dans mon projet de test. Comment puis-je l'exclure (et d'autres dépendances futures) de la couverture de code?

+0

Avez-vous vérifié la documentation? https://msdn.microsoft.com/en-us/library/jj159530.aspx et https://stackoverflow.com/questions/36853340/excluding-assemblies-from-code-coverage-in-visual-studio-team- services – Jacob

+0

@Jacob c'est une option, mais je préfère avoir une méthode "set and forget" dans VSTS au lieu de créer un fichier '.runsettings' qui doit être maintenu. (Peut-être que je devrais juste créer un rapport de bogue à la place, parce que je doute que c'est comment il est censé fonctionner.) – Stijn

Répondre

1

Il est le résultat attendre si le test en cours d'exécution par VSTest.Console.exe, vous pouvez exécuter le test par VSTest.Console.exe sur votre machine locale manuellement et vérifier le résultat.

La tâche Test Visual Studio appelle VSTest.Console.exe pour exécuter test, il recueille la couverture de code pour des ensembles supplémentaires. Il n'y a pas la possibilité de le configurer sauf spécifier le qui exécute le fichier.