Condividi tramite


PublishCodeCoverageResults@1 - Pubblicare i risultati del code coverage v1

Usare questa attività per pubblicare i risultati di code coverage cobertura o JaCoCo da una compilazione.

Pubblicare i risultati del code coverage cobertura o JaCoCo da una compilazione.

Usare questa attività per pubblicare i risultati di code coverage cobertura o JaCoCo da una compilazione.

Sintassi

# Publish code coverage results v1
- task: PublishCodeCoverageResults@1
  inputs:
    codeCoverageTool: 'JaCoCo' # 'Cobertura' | 'JaCoCo'. Required. Code coverage tool. Default: JaCoCo.
    summaryFileLocation: # string. Required. Summary file. 
    #pathToSources: # string. Path to Source files. 
    #reportDirectory: # string. Report directory. 
    #additionalCodeCoverageFiles: # string. Additional files. 
    #failIfCoverageEmpty: false # boolean. Fail when code coverage results are missing. Default: false.
# Publish code coverage results v1
# Publish Cobertura or JaCoCo code coverage results from a build.
- task: PublishCodeCoverageResults@1
  inputs:
    codeCoverageTool: 'JaCoCo' # 'Cobertura' | 'JaCoCo'. Required. Code coverage tool. Default: JaCoCo.
    summaryFileLocation: # string. Required. Summary file. 
    #pathToSources: # string. Path to Source files. 
    #reportDirectory: # string. Report directory. 
    #additionalCodeCoverageFiles: # string. Additional files. 
    #failIfCoverageEmpty: false # boolean. Fail when code coverage results are missing. Default: false.
# Publish Code Coverage Results v1
# Publish Cobertura or JaCoCo code coverage results from a build.
- task: PublishCodeCoverageResults@1
  inputs:
    codeCoverageTool: 'JaCoCo' # 'Cobertura' | 'JaCoCo'. Required. Code coverage tool. Default: JaCoCo.
    summaryFileLocation: # string. Required. Summary file. 
    #reportDirectory: # string. Report directory. 
    #additionalCodeCoverageFiles: # string. Additional files. 
    #failIfCoverageEmpty: false # boolean. Fail when code coverage results are missing. Default: false.

Ingressi

codeCoverageTool - strumento code coverage
string. Obbligatorio. Valori consentiti: Cobertura, JaCoCo. Valore predefinito: JaCoCo.

Specifica lo strumento che genera i risultati del code coverage.


summaryFileLocation - file di riepilogo
string. Obbligatorio.

Specifica il percorso del file di riepilogo contenente statistiche di code coverage, ad esempio riga, metodo e copertura della classe. Più file di riepilogo vengono uniti in un singolo report. Il valore può contenere modelli di minimatch. Ad esempio: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml.


pathToSources - percorso dei file di origine
string.

Quando i report XML di copertura non contengono un percorso assoluto ai file di origine, è necessario specificare un percorso ai file di origine. Ad esempio, i report JaCoCo non usano percorsi assoluti, quindi quando si pubblica la copertura JaCoCo per le app Java, il modello è simile a $(System.DefaultWorkingDirectory)/MyApp/src/main/java/. Questo input deve puntare a un percorso assoluto ai file di origine nell'host. Ad esempio, $(System.DefaultWorkingDirectory)/MyApp/.

Questo input può essere usato se i test vengono eseguiti in un contenitore Docker.

È possibile aggiungere più origini delimitando ogni voce di elenco con il carattere ;, ad esempio pathToSources: $(System.DefaultWorkingDirectory)/path/to/first/source;$(System.DefaultWorkingDirectory)/path/to/second/source.


reportDirectory - directory report
string.

Specifica il percorso della directory del report HTML code coverage. La directory del report viene pubblicata per la visualizzazione successiva come artefatto della compilazione. Il valore può contenere modelli di minimatch. Ad esempio: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura.


additionalCodeCoverageFiles - file aggiuntivi
string.

Specifica il modello di percorso del file e annota eventuali file di code coverage aggiuntivi da pubblicare come artefatti della compilazione. Il valore può contenere modelli di minimatch. Ad esempio: $(System.DefaultWorkingDirectory)/**/*.exec.


failIfCoverageEmpty - Fail when code coverage results are missing
boolean. Valore predefinito: false.

L'attività ha esito negativo se il code coverage non ha prodotto alcun risultato da pubblicare.


Opzioni di controllo attività

Tutte le attività hanno opzioni di controllo oltre ai relativi input di attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

Nessuno.

Osservazioni

Usare questa attività in una pipeline di compilazione per pubblicare i risultati del code coverage generati durante l'esecuzione di test in Azure Pipelines o TFS per ottenere report di copertura. L'attività supporta formati di risultati di copertura comuni, ad esempio Cobertura e JaCoCo.

Questa attività è supportata solo nelle pipeline di compilazione, non nelle pipeline di versione.

Attività come test di Visual Studio, .NET Core, Ant, Maven, Gulpe Grunt offrono anche la possibilità di pubblicare i dati di code coverage nella pipeline. Se si usano queste attività, non è necessaria un'attività Pubblica risultati code coverage separata nella pipeline.

Per generare il report di code coverage HTML, è necessario dotnet framework 2.0.0 o versione successiva nell'agente. La cartella dotnet deve trovarsi nel percorso dell'ambiente. Se sono presenti più cartelle contenenti dotnet, quella con la versione 2.0.0 deve essere prima di qualsiasi altra nell'elenco di percorsi.

Risultati del code coverage per JavaScript con Istanbul con YAML

Per pubblicare i risultati del code coverage per JavaScript con Istanbul usando YAML, vedere Personalizzare JavaScript nella sezione Ecosistemi di questi argomenti, che include anche esempi per altri linguaggi.

Vedere un esempio di pubblicazione del code coverage con Cobertura.

Scaricatore

Per le app che usano Docker, la compilazione e i test possono essere eseguiti all'interno del contenitore e generare risultati di code coverage all'interno del contenitore. Per pubblicare i risultati nella pipeline, gli artefatti risultanti devono essere resi disponibili all'attività Pubblica risultati code coverage. Per riferimento, è possibile visualizzare un esempio simile per la pubblicazione dei risultati dei test nella sezione Compilazione, test e pubblicazione dei risultati con un file Docker per Docker.

Visualizzare i risultati

Per visualizzare i risultati del code coverage nella pipeline, vedere Esaminare i risultati del code coverage.

I dati di code coverage vengono uniti quando vengono forniti più file come input per l'attività o vengono usate più attività nella pipeline?

Attualmente, la funzionalità di creazione di report di code coverage fornita da questa attività è limitata e non unisce i dati di copertura. Se si specificano più file come input per l'attività, viene considerata solo la prima corrispondenza. Se si usano più attività di code coverage di pubblicazione nella pipeline, il riepilogo e il report vengono visualizzati per l'ultima attività. Tutti i dati caricati in precedenza vengono ignorati.

Problemi noti

L'attività pubblica risultati code coverage genera e pubblica il report HTML, ovvero un set di file HTML collegati dal file index.html principale. Se la scheda code coverage non riesce a visualizzare il report di code coverage, verificare se le dimensioni del file index.html sono vicine o superiori a 7 MB. Completare i passaggi seguenti per controllare le dimensioni del file. Se quindi le dimensioni del file sono vicine o superiori a 7 MB, è possibile usare la soluzione alternativa seguente per visualizzare il report di copertura.

  1. Selezionare la scheda riepilogo compilazione e quindi selezionare il collegamento pubblicato :

    Screenshot che mostra il collegamento pubblicato nel riquadro Riepilogo.

  2. Accanto all'artefatto Report_ code coverage * selezionare Scarica elementi:

    Screenshot che mostra il collegamento Scarica artefatti per il report di code coverage in Artefatti.

  3. Quando il report di code coverage viene scaricato, estrarre il file di .zip.

  4. Nel report code coverage controllare le dimensioni di index.html per determinare se le dimensioni del file causano il problema descritto qui.

  5. Aprire index.html in un browser per visualizzare il report di code coverage.

Fabbisogno

Requisito Descrizione
Tipi di pipeline YAML, build classica
Viene eseguito in Agente, DeploymentGroup
richieste Nessuno
funzionalità di Questa attività non soddisfa alcuna richiesta di attività successive nel processo.
restrizioni dei comandi Qualunque
variabili impostabili Questa attività dispone dell'autorizzazione per impostare le variabili seguenti: L'impostazione delle variabili è disabilitata
Versione dell'agente 2.182.1 o versione successiva
Categoria attività Test
Requisito Descrizione
Tipi di pipeline YAML, build classica
Viene eseguito in Agente, DeploymentGroup
richieste Nessuno
funzionalità di Questa attività non soddisfa alcuna richiesta di attività successive nel processo.
restrizioni dei comandi Qualunque
variabili impostabili Qualunque
Versione dell'agente 2.102.0 o versione successiva
Categoria attività Test

Vedere anche