Affichage des résultats de la couverture de code en dehors de Visual studio

J’ai des tests unitaires et des données de couverture de code. Maintenant, j’aimerais pouvoir visualiser ces données de couverture de code en dehors de Visual Studio, par exemple dans un navigateur Web. Mais, lorsque j’exporte la couverture de code dans un fichier XML, je ne peux rien faire avec. Y a-t-il des lecteurs pour cela? Dois-je écrire un parsingur XML et l’afficher ensuite comme je le souhaite (cela semble un gaspillage puisque Visual Studio le fait déjà?). Cela semble un peu ridicule de devoir prendre une capture d’écran de mes résultats de couverture de code sous forme de suggestions de “rapport”.

Cet outil https://github.com/danielpalme/ReportGenerator génère rapidement des rapports HTML à partir du fichier de couverture. Fonctionne assez bien et ne nécessite pas d’activités complexes, peut être facilement inclus dans le processus de construction.

Il existe cet outil appelé Visual Coverage ( https://github.com/jsargiot/visual-coverage ). Il prend un fichier .coverage en entrée et peut l’exporter en trèfle ou en HTML.

La page sur github montre comment exécuter et si vous êtes curieux, vous pouvez jeter un coup d’œil au code …

Vous pouvez utiliser l’outil NDepend et visualiser les résultats de couverture de code importés depuis une couverture NCover , dotCover ou Visual Studio . L’outil peut afficher la couverture de code par rapport aux lignes de code dans un treemap coloré. Cette fonctionnalité est particulièrement utile pour parcourir en un coup d’œil quelle partie du code est bien couverte ou non par les tests.

Couverture de code de treemap couleur NDepend par rapport aux lignes de code

Vous pouvez également écrire et appliquer en permanence des règles de code écrites sur des requêtes LINQ (CQLinq), telles que:

A partir de maintenant, tous les types ajoutés ou refactorisés devraient être couverts à 100% par des tests

// From now, all types added or refactored should be 100% covered by tests warnif count > 0 from t in JustMyCode.Types where // Match methods new or modified since Baseline for Comparison... (t.WasAdded() || t.CodeWasChanged()) && // ...that are not 100% covered by tests t.PercentageCoverage < 100 let methodsCulprit = t.Methods.Where(m => m.PercentageCoverage < 100) select new { t, t.PercentageCoverage, methodsCulprit } 

... ou aussi:

  • Types qui étaient couverts à 100% mais plus maintenant
  • Mésortingque du code de la méthode CRAP
  • Les méthodes complexes partiellement couvertes par les tests doivent être couvertes à 100%

Le panneau Recherche par couverture peut générer une telle requête de code sur LINQ et affiche instantanément les éléments de code correspondants:

Méthodes de recherche par couverture

En outre, l'outil peut générer des rapports HTML / javascript indiquant les règles de code violées ou les résultats des requêtes de code .

Je ne peux pas parler du contenu du fichier XML exporté, mais je suppose qu’il contiendra vos données de couverture sous forme de résumé.

Si vous souhaitez l’afficher dans une page de navigateur Web, le traitement habituel des données XML consiste à les convertir en HTML en écrivant et en exécutant un script XSLT personnalisé. Cela vous permettra probablement d’obtenir du texte HTML et des tableaux contenant vos données.

Si vous voulez voir les données de couverture comme des décorations imposées au code source, je pense que vous avez un problème beaucoup plus difficile.

J’utilise NCover pour faire toute la couverture de mon code et vous avez la possibilité d’exporter les résultats assez facilement

Pourrait vous aider: vous pouvez ouvrir toutes les données de couverture dans le volet Résultats de couverture de code et les copier-coller dans Excel …