Compartilhar via


PublishCodeCoverageResults@1 – Publicar a tarefa v1 de resultados de cobertura de código

Use essa tarefa para publicar os resultados da cobertura de código Cobertura ou JaCoCo de um build.

Publicar os resultados da cobertura de código jacoco ou cobertura de código de um build.

Use essa tarefa para publicar os resultados da cobertura de código Cobertura ou JaCoCo de um build.

Sintaxe

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

Entradas

da ferramenta de cobertura de código do
string. Necessário. Valores permitidos: Cobertura, JaCoCo. Valor padrão: JaCoCo.

Especifica a ferramenta que gera resultados de cobertura de código.


summaryFileLocation - arquivo resumo
string. Necessário.

Especifica o caminho do arquivo de resumo que contém estatísticas de cobertura de código, como cobertura de linha, método e classe. Vários arquivos de resumo são mesclados em um único relatório. O valor pode conter padrões de minimatch. Por exemplo: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml.


pathToSources - caminho para arquivos de origem
string.

Especificar um caminho para arquivos de origem é necessário quando os relatórios XML de cobertura não contêm um caminho absoluto para arquivos de origem. Por exemplo, os relatórios JaCoCo não usam caminhos absolutos, portanto, ao publicar a cobertura jacoco para aplicativos Java, o padrão é semelhante a $(System.DefaultWorkingDirectory)/MyApp/src/main/java/. Essa entrada deve apontar para um caminho absoluto para arquivos de origem no host. Por exemplo, $(System.DefaultWorkingDirectory)/MyApp/.

Essa entrada poderá ser usada se os testes forem executados em um contêiner do Docker.

Várias fontes podem ser adicionadas delimitando cada item de lista com o caractere ;, por exemplo, pathToSources: $(System.DefaultWorkingDirectory)/path/to/first/source;$(System.DefaultWorkingDirectory)/path/to/second/source.


reportDirectory - diretório de relatório
string.

Especifica o caminho do diretório de relatório HTML de cobertura de código. O diretório de relatório é publicado para exibição posterior como um artefato da compilação. O valor pode conter padrões de minimatch. Por exemplo: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura.


additionalCodeCoverageFiles - arquivos adicionais
string.

Especifica o padrão de caminho do arquivo e observa os arquivos de cobertura de código adicionais a serem publicados como artefatos do build. O valor pode conter padrões de minimatch. Por exemplo: $(System.DefaultWorkingDirectory)/**/*.exec.


failIfCoverageEmpty - Falhar quando os resultados da cobertura de código estiverem ausentes
boolean. Valor padrão: false.

Falha na tarefa se a cobertura de código não produzir resultados a serem publicados.


Opções de controle de tarefa

Todas as tarefas têm opções de controle além de suas entradas de tarefa. Para obter mais informações, consulte as opções de Controle de e as propriedades comuns da tarefa.

Variáveis de saída

Nenhum.

Observações

Use essa tarefa em um pipeline de build para publicar os resultados de cobertura de código produzidos ao executar testes no Azure Pipelines ou TFS para obter relatórios de cobertura. A tarefa dá suporte a formatos de resultados de cobertura populares, como Cobertura e JaCoCo.

Essa tarefa só tem suporte em pipelines de build, não em pipelines de lançamento.

Tarefas como de Teste do Visual Studio, do .NET Core, Ant, Maven, Gulpe Grunt também fornecem a opção de publicar dados de cobertura de código no pipeline. Se você estiver usando essas tarefas, não precisará de uma tarefa de Resultados de Cobertura de Código de Publicação separada no pipeline.

Para gerar o relatório de cobertura de código HTML, você precisa da estrutura dotnet 2.0.0 ou posterior no agente. A pasta dotnet deve estar no caminho do ambiente. Se houver várias pastas contendo dotnet, a versão 2.0.0 deverá estar antes de qualquer outra na lista de caminhos.

Resultados de cobertura de código para JavaScript com Istambul usando YAML

Para publicar os resultados de cobertura de código para JavaScript com Istambul usando YAML, consulte Personalizar JavaScript na seção Ecossistemas desses tópicos, que também inclui exemplos para outros idiomas.

Veja um exemplo de publicação de cobertura de código usando Cobertura.

Estivador

Para aplicativos que usam o Docker, o build e os testes podem ser executados dentro do contêiner e gerar resultados de cobertura de código dentro do contêiner. Para publicar os resultados no pipeline, os artefatos resultantes devem ser disponibilizados para a tarefa Publicar Resultados de Cobertura de Código. Para referência, você pode ver um exemplo semelhante para publicar resultados de teste no Compilar, testar e publicar resultados com um arquivo do Docker seção para Docker.

Exibir resultados

Para exibir os resultados da cobertura de código no pipeline, consulte Examinar os resultados da cobertura de código.

Os dados de cobertura de código são mesclados quando vários arquivos são fornecidos como entrada para a tarefa ou várias tarefas são usadas no pipeline?

No momento, a funcionalidade de relatório de cobertura de código fornecida por essa tarefa é limitada e não mescla dados de cobertura. Se você fornecer vários arquivos como entrada para a tarefa, somente a primeira correspondência será considerada. Se você usar várias tarefas de cobertura de código de publicação no pipeline, o resumo e o relatório serão mostrados para a última tarefa. Todos os dados carregados anteriormente são ignorados.

Problemas conhecidos

A tarefa de resultados de cobertura de código de publicação gera e publica o relatório HTML, que é um conjunto de arquivos HTML vinculados do arquivo de index.html principal. Se a guia cobertura de código não mostrar o relatório de cobertura de código, verifique se o tamanho do arquivo index.html é próximo ou maior que 7 MB. Conclua as etapas a seguir para verificar o tamanho do arquivo. Em seguida, se o tamanho do arquivo for próximo ou maior que 7 MB, você poderá usar a solução alternativa a seguir para exibir o relatório de cobertura.

  1. Selecione a guia resumo do de build e selecione o link publicado:

    Captura de tela que mostra o link publicado no painel Resumo.

  2. Ao lado do artefato Report_* cobertura de código *, selecione Baixar artefatos:

    Captura de tela que mostra o link Baixar artefatos para o relatório de cobertura de código em Artefatos.

  3. Quando o relatório de cobertura de código for baixado, extraia o arquivo .zip.

  4. No relatório de cobertura de código, verifique o tamanho de index.html para ajudar a determinar se o tamanho do arquivo está causando o problema descrito aqui.

  5. Abra index.html em um navegador para exibir o relatório de cobertura de código.

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico
Execuções em Agent, DeploymentGroup
de demandas Nenhum
recursos Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho.
restrições de comando Qualquer
variáveis settable Essa tarefa tem permissão para definir as seguintes variáveis: a configuração de variáveis está desabilitada
Versão do agente 2.182.1 ou superior
Categoria de tarefa Teste
Requisito Descrição
Tipos de pipeline YAML, build clássico
Execuções em Agent, DeploymentGroup
de demandas Nenhum
recursos Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho.
restrições de comando Qualquer
variáveis settable Qualquer
Versão do agente 2.102.0 ou superior
Categoria de tarefa Teste

Consulte também