PublishCodeCoverageResults@2- Resultaten van codedekking publiceren v2-taak

Gebruik deze taak om codedekkingsresultaten van een build op te halen.

Syntax

# 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.

Invoerwaarden

summaryFileLocation - Pad naar overzichtsbestanden
string. Vereist.

Hiermee geeft u het pad op van het samenvattingsbestand met codedekkingsstatistieken, zoals regel, methode en klassedekking. Meerdere overzichtsbestanden worden samengevoegd in één rapport. De waarde kan minimatchpatronen bevatten. Bijvoorbeeld: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml. Meer informatie over minimatchpatronen.


pathToSources - Pad naar bronbestanden
string.

Het opgeven van een pad naar bronbestanden is vereist wanneer XML-rapporten voor dekking geen absoluut pad naar bronbestanden bevatten. JaCoCo-rapporten gebruiken bijvoorbeeld geen absolute paden, dus bij het publiceren van JaCoCo-dekking voor Java-apps is het patroon vergelijkbaar met $(System.DefaultWorkingDirectory)/MyApp/src/main/java/. Deze invoer moet verwijzen naar een absoluut pad naar bronbestanden op de host. Bijvoorbeeld $(System.DefaultWorkingDirectory)/MyApp/.

Deze invoer kan worden gebruikt als tests worden uitgevoerd in een Docker-container.


failIfCoverageEmpty - Mislukt als de resultaten van de codedekking ontbreken
boolean. Standaardwaarde: false.

De taak mislukt als de codedekking geen resultaten heeft geproduceerd om te publiceren.


Opties voor taakbeheer

Alle taken hebben besturingsopties naast hun taakinvoer. Zie Besturingsopties en algemene taakeigenschappen voor meer informatie.

Uitvoervariabelen

Geen.

Opmerkingen

Notitie

Zie Nieuwe versie van de taak Resultaten van codedekking publiceren op de Azure DevOps-blog voor informatie over de nieuwe functies in V2 van de taak Resultaten van codedekking publiceren en migreren van V1 naar V2.

Gebruik deze taak in een build-pijplijn om codedekkingsresultaten te publiceren die zijn geproduceerd bij het uitvoeren van tests naar Azure Pipelines of TFS en na het genereren van de XML-bestanden voor dekking om het codedekkingstabblad en de details van de dekkingsrapportage in de pijplijn te verkrijgen. De taak ondersteunt door codedekking gegenereerde XML-indelingen. Met deze taak wordt een cjson-bestand gegenereerd dat de details van de codedekking bevat. Er wordt ook een HTML-rapport met codedekking geproduceerd onder de buildartefacten.

Deze taak wordt alleen ondersteund in build-pijplijnen, niet in release-pijplijnen.

Taken zoals Visual Studio Test, .NET Core, Ant, Maven, Gulp en Grunt bieden ook de optie om codedekkingsgegevens naar de pijplijn te publiceren. Als u deze taken gebruikt, hebt u geen afzonderlijke taak Voor het publiceren van codedekkingsresultaten in de pijplijn nodig.

Vereiste: als u de taak Resultaten van codedekking publiceren v2 in de pijplijn wilt gebruiken, gebruikt u de taak dotnet 7.0.x als vereiste in de pijplijn. Gebruik de dotnet-kerntaak vóór de taak Codedekking publiceren v2.

Vereisten

De vereisten configureren met behulp van een YAML-pijplijn:

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

De vereisten configureren met behulp van de ontwerpfunctie:

Schermopname van de .Net Core Sdk-taak in de pijplijn.

  1. Configureer de taak Resultaten van codedekking publiceren versie 2 met behulp van de volgende instellingen.

    Schermopname van de taak Resultaten van codedekking publiceren v2

  2. Nadat de build is voltooid en de taak Resultaten van codedekking publiceren v2 is voltooid, selecteert u het tabblad Codedekking in de samenvatting van de pijplijnuitvoering om de resultaten van de codedekking weer te geven.

    Schermopname van het tabblad Codedekking dat is gegenereerd door de taak Codedekking publiceren V2

Resultaten van codedekking voor JavaScript met Istanbul met behulp van YAML

Zie JavaScript aanpassen in de sectie Ecosystemen van deze onderwerpen om resultaten voor codedekking voor JavaScript met Istanbul met behulp van YAML te publiceren. Hier vindt u ook voorbeelden voor andere talen.

Bekijk een voorbeeld van het publiceren van codedekking met behulp van Cobertura.

Docker

Voor apps die Docker gebruiken, kunnen build- en tests in de container worden uitgevoerd en codedekkingsresultaten binnen de container genereren. Als u de resultaten naar de pijplijn wilt publiceren, moeten de resulterende artefacten beschikbaar worden gesteld voor de taak Resultaten van codedekking publiceren . Ter referentie ziet u een vergelijkbaar voorbeeld voor het publiceren van testresultaten in de sectie Resultaten bouwen, testen en publiceren met een Docker-bestand voor Docker.

Resultaten weergeven

Zie Resultaten van codedekking controleren om de codedekkingsresultaten in de pijplijn te bekijken.

Bekende problemen

De taak resultaten van codedekking publiceren v2 genereert een cjson-bestand en publiceert het codedekkingsrapport op het tabblad Codedekking. Het produceert ook een buildartefacten die een set HTML-bestanden zijn die zijn gekoppeld vanuit het hoofdbestandindex.html . Als het tabblad Codedekking het codedekkingsrapport niet kan weergeven, controleert u of het XML-bestand met de invoercodedekking de juiste indeling heeft en de geldige gegevens bevat.

Vereisten

Vereiste Beschrijving
Pijplijntypen YAML, klassieke build
Wordt uitgevoerd op Agent
Eisen Geen
Functies Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak.
Opdrachtbeperkingen Alle
Instelbare variabelen Alle
Agentversie 2.144.0 of hoger
Taakcategorie Testen

Zie ook