Partager via


PublishCodeCoverageResults@2 - Publier des résultats de couverture du code v2

Utilisez cette tâche pour obtenir les résultats de la couverture du code à partir d’une build.

Syntaxe

# Publish code coverage results v2
# Publish any of the code coverage results from a build.
- task: PublishCodeCoverageResults@2
  inputs:
    summaryFileLocation: # string. Required. Path to summary files. 
    #pathToSources: # string. Path to Source files. 
    #failIfCoverageEmpty: false # boolean. Fail if code coverage results are missing. Default: false.

Entrées

summaryFileLocation - chemin d’accès aux fichiers récapitulatives
string. Obligatoire.

Spécifie le chemin d’accès du fichier récapitulative contenant des statistiques de couverture du code, telles que la ligne, la méthode et la couverture de classe. Plusieurs fichiers récapitulatives sont fusionnés dans un seul rapport. La valeur peut contenir des modèles de mini-correspondance. Par exemple : $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml. Plus d’informations sur les modèles de mini-correspondance.


chemin d’accès aux fichiers sources pathToSources -
string.

La spécification d’un chemin d’accès aux fichiers sources est requise lorsque les rapports XML de couverture ne contiennent pas de chemin absolu vers les fichiers sources. Par exemple, les rapports JaCoCo n’utilisent pas de chemins absolus. Par conséquent, lors de la publication de la couverture JaCoCo pour les applications Java, le modèle est similaire à $(System.DefaultWorkingDirectory)/MyApp/src/main/java/. Cette entrée doit pointer vers un chemin absolu vers les fichiers sources sur l’hôte. Par exemple, $(System.DefaultWorkingDirectory)/MyApp/.

Cette entrée peut être utilisée si des tests sont exécutés dans un conteneur Docker.


failIfCoverageEmpty - Échouer si les résultats de couverture du code sont manquants
boolean. Valeur par défaut : false.

Échec de la tâche si la couverture du code n’a pas produit de résultats à publier.


Options de contrôle de tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâche. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Remarques

Utilisez cette tâche dans un pipeline de build pour publier les résultats de couverture du code générés lors de l’exécution de tests sur Azure Pipelines ou TFS et après avoir généré les fichiers xml de couverture afin d’obtenir les détails de l’onglet couverture du code et des rapports de couverture dans le pipeline. La tâche prend en charge les formats xml générés par la couverture du code. Cette tâche génère un fichier cjson qui contient les détails de la couverture du code. Il produit également un rapport HTML de couverture de code sous les artefacts de build.

Cette tâche est uniquement prise en charge dans les pipelines de build, et non dans les pipelines de mise en production.

Les tâches telles que visual Studio Test, .NET Core, Ant, Maven, Gulpet Grunt offrent également la possibilité de publier des données de couverture de code dans le pipeline. Si vous utilisez ces tâches, vous n’avez pas besoin d’une tâche de publication distincte des résultats de couverture du code dans le pipeline.

Prérequis : pour utiliser la tâche Publier les résultats de couverture du code v2 dans le pipeline, utilisez la tâche dotnet 7.0.x comme condition préalable dans le pipeline. Utilisez la tâche principale dotnet avant la tâche Publier la couverture du code v2.

Conditions préalables

Pour configurer les prérequis à l’aide d’un pipeline YAML :

# Dotnet core sdk task 7.0.x
- task: UseDotNet@2
  displayName: 'Use .NET Core sdk 7.0.x'
  inputs:
    version: 7.0.x

Pour configurer les prérequis à l’aide du concepteur :

Capture d’écran montrant la tâche du Kit de développement logiciel (SDK) .Net Core dans le pipeline.

  1. Configurez la tâche Publier les résultats de couverture du code version 2 à l’aide des paramètres suivants.

    capture d’écran montrant la tâche Publier les résultats de la couverture du code v2

  2. Une fois la build terminée et la tâche Publier les résultats de la couverture du code v2, sélectionnez l’onglet Couverture du code dans le résumé de l’exécution du pipeline pour afficher les résultats de la couverture du code.

    Capture d’écran montrant l’onglet Couverture du code généré par la tâche Publier la couverture du code V2

Résultats de la couverture du code pour JavaScript avec Istanbul à l’aide de YAML

Pour publier des résultats de couverture du code pour JavaScript avec Istanbul à l’aide de YAML, consultez Personnaliser les JavaScript dans la section Écosystèmes de ces rubriques, qui inclut également des exemples pour d’autres langages.

Consultez un exemple de publication de la couverture du code à l’aide de Cobertura.

Docker

Pour les applications utilisant Docker, les tests et les builds peuvent s’exécuter à l’intérieur du conteneur et générer des résultats de couverture du code dans le conteneur. Pour publier les résultats dans le pipeline, les artefacts résultants doivent être mis à la disposition des publier les résultats de la couverture du code tâche. Pour référence, vous pouvez voir un exemple similaire pour publier des résultats de test sous la Générer, tester et publier des résultats avec une section de fichier Docker pour Docker.

Afficher les résultats

Pour afficher les résultats de couverture du code dans le pipeline, consultez Examiner les résultats de couverture du code.

Problèmes connus

La tâche de publication des résultats de couverture du code v2 génère un fichier cjson et publie le rapport de couverture du code sous l’onglet Couverture du code. Il produit également des artefacts de build qui sont un ensemble de fichiers HTML liés à partir du fichier principal index.html. Si l’onglet Couverture du code ne parvient pas à afficher le rapport de couverture du code, vérifiez si le fichier xml de couverture du code d’entrée est au format correct et contient les détails valides.

Exigences

Exigence Description
Types de pipelines YAML, build classique
Exécutions sur Agent
demandes Aucun
fonctionnalités de Cette tâche ne répond à aucune demande de tâches ultérieures dans le travail.
restrictions de commande Quelconque
variables settables Quelconque
Version de l’agent 2.144.0 ou version ultérieure
Catégorie de tâche Test

Voir aussi