PublishCodeCoverageResults@1: tarea Publicar resultados de cobertura de código v1

Use esta tarea para publicar los resultados de cobertura de código Cobertura o JaCoCo a partir de una compilación.

Importante

Esta tarea está en desuso. Se recomienda a los usuarios cambiar a PublishCodeCoverageResults@2. Para obtener más información, vea Nueva versión de la tarea Publicar resultados de cobertura de código.

Use esta tarea para publicar los resultados de cobertura de código Cobertura o JaCoCo a partir de una compilación.

Syntax

# Publish code coverage results v1
# [DEPRECATION WARNING! Users are recommended to switch to version 2*.] 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. 
    #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.
# YAML Syntax is not supported in TFS 2018.
# Use the classic designer to add and configure tasks.
# See the following Inputs section for details on the inputs that this task supports.

Entradas

codeCoverageTool - Herramienta de cobertura de código
string. Obligatorio. Valores permitidos: Cobertura, JaCoCo. Valor predeterminado: JaCoCo.

Especifica la herramienta que genera resultados de cobertura de código.


summaryFileLocation - Archivo de resumen
string. Obligatorio.

Especifica la ruta de acceso del archivo de resumen que contiene estadísticas de cobertura de código, como la cobertura de línea, método y clase. Varios archivos de resumen se combinan en un único informe. El valor puede contener patrones de minimatch. Por ejemplo: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml.


pathToSources - Ruta de acceso a los archivos de origen
string.

La especificación de una ruta de acceso a los archivos de origen es necesaria cuando los informes XML de cobertura no contienen una ruta de acceso absoluta a los archivos de origen. Por ejemplo, los informes de JaCoCo no usan rutas de acceso absolutas, por lo que al publicar cobertura de JaCoCo para aplicaciones Java, el patrón es similar a $(System.DefaultWorkingDirectory)/MyApp/src/main/java/. Esta entrada debe apuntar a una ruta de acceso absoluta a los archivos de origen en el host. Por ejemplo, $(System.DefaultWorkingDirectory)/MyApp/.

Esta entrada se puede usar si las pruebas se ejecutan en un contenedor de Docker.

Se pueden agregar varios orígenes delimitando cada elemento de lista con el ; carácter , por ejemplo pathToSources: $(System.DefaultWorkingDirectory)/path/to/first/source;$(System.DefaultWorkingDirectory)/path/to/second/source.


reportDirectory - Directorio de informes
string.

Especifica la ruta de acceso del directorio de informe HTML de cobertura de código. El directorio de informes se publica para su visualización posterior como un artefacto de la compilación. El valor puede contener patrones de minimatch. Por ejemplo: $(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura.


additionalCodeCoverageFiles - Archivos adicionales
string.

Especifica el patrón de ruta de acceso de archivo y anota los archivos de cobertura de código adicionales que se van a publicar como artefactos de la compilación. El valor puede contener patrones de minimatch. Por ejemplo: $(System.DefaultWorkingDirectory)/**/*.exec.


failIfCoverageEmpty - Error cuando faltan resultados de cobertura de código
boolean. Valor predeterminado: false.

Se produce un error en la tarea si la cobertura de código no ha generado ningún resultado para publicar.


Opciones de control de tareas

Todas las tareas tienen opciones de control además de las entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.

Variables de salida

Ninguno.

Comentarios

Importante

Esta tarea está en desuso. Se recomienda a los usuarios cambiar a PublishCodeCoverageResults@2. Para obtener más información, vea Nueva versión de la tarea Publicar resultados de cobertura de código.

Nota

Consulte Nueva versión de la tarea Publicar resultados de cobertura de código en el blog de Azure DevOps para obtener información sobre las nuevas características de la tarea Publicar resultados de cobertura de código y migrar de V1 a V2.

Use esta tarea en una canalización de compilación para publicar los resultados de cobertura de código generados al ejecutar pruebas en Azure Pipelines o TFS con el fin de obtener informes de cobertura. La tarea admite formatos de resultado de cobertura conocidos como Cobertura y JaCoCo.

Esta tarea solo se admite en canalizaciones de compilación, no en canalizaciones de versión.

Las tareas como Visual Studio Test, .NET Core, Ant, Maven, Gulp y Grunt también proporcionan la opción de publicar datos de cobertura de código en la canalización. Si usa estas tareas, no necesita una tarea de Publicar resultados de cobertura de código aparte en la canalización.

Para generar el informe de cobertura de código HTML, necesita dotnet framework 2.0.0 o posterior en el agente. La carpeta dotnet debe estar en la ruta de acceso del entorno. Si hay varias carpetas que contienen dotnet, la que tiene la versión 2.0.0 debe aparecer antes que cualquier otra en la lista de rutas de acceso.

Resultados de cobertura de código para JavaScript con Estambul mediante YAML

Para publicar resultados de cobertura de código para JavaScript con Estambul mediante YAML, consulte Personalización de JavaScript en la sección Ecosistemas de estos temas, que también incluye ejemplos para otros lenguajes.

Vea un ejemplo de cobertura de código de publicación mediante Cobertura.

Docker

En el caso de las aplicaciones que usan Docker, la compilación y las pruebas se pueden ejecutar dentro del contenedor y generar resultados de cobertura de código dentro del contenedor. Para publicar los resultados en la canalización, los artefactos resultantes deben estar disponibles para la tarea Publicar resultados de cobertura de código . Como referencia, puede ver un ejemplo similar para publicar resultados de pruebas en la sección Compilación, prueba y publicación de resultados con un archivode Docker para Docker.

Vista de resultados

Para ver los resultados de la cobertura de código en la canalización, consulte Revisión de los resultados de la cobertura de código.

¿Se combinan los datos de cobertura de código cuando se proporcionan varios archivos como entrada para la tarea o se usan varias tareas en la canalización?

En la actualidad, la funcionalidad de informes de cobertura de código proporcionada por esta tarea está limitada y no combina los datos de cobertura. Si proporciona varios archivos como entrada para la tarea, solo se considera la primera coincidencia. Si usa varias tareas de cobertura de código de publicación en la canalización, el resumen y el informe se muestran para la última tarea. Se omiten los datos cargados anteriormente.

Problemas conocidos

La tarea de resultados de cobertura de código de publicación genera y publica el informe HTML, que es un conjunto de archivos HTML que están vinculados desde el archivo index.html principal. Si la pestaña cobertura de código no muestra el informe de cobertura de código, compruebe si el tamaño del archivo index.html es cercano o superior a 7 MB. Complete los pasos siguientes para comprobar el tamaño del archivo. A continuación, si el tamaño del archivo está cerca o superior a 7 MB, puede usar la siguiente solución alternativa para ver el informe de cobertura.

  1. Seleccione la pestaña Resumen de compilación y, a continuación, seleccione el vínculo publicado:

    Captura de pantalla que muestra el vínculo publicado en el panel Resumen.

  2. Junto al artefacto Code Coverage Report_*, seleccione Descargar artefactos:

    Captura de pantalla que muestra el vínculo Descargar artefactos para el informe de cobertura de código en Artefactos.

  3. Cuando se descargue el informe de cobertura de código, extraiga el archivo .zip.

  4. En el informe de cobertura de código, compruebe el tamaño de index.html para ayudar a determinar si el tamaño del archivo está causando el problema que se describe aquí.

  5. Abra index.html en un explorador para ver el informe de cobertura de código.

Requisitos

Requisito Descripción
Tipos de canalización YAML, compilación clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Esta tarea tiene permiso para establecer las siguientes variables: La configuración de variables está deshabilitada.
Versión del agente 2.182.1 o superior
Categoría de la tarea: Prueba
Requisito Descripción
Tipos de canalización YAML, compilación clásica
Se ejecuta en Agente, DeploymentGroup
Peticiones None
Capabilities Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
Restricciones de comandos Any
Variables que se pueden establecer Any
Versión del agente 2.102.0 o superior
Categoría de la tarea: Prueba

Consulte también