Compartir vía


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 de una compilación.

Publique los resultados de cobertura de código de Cobertura o JaCoCo a partir de una compilación.

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

Sintaxis

# 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

de la herramienta de cobertura de código de
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 línea, el método y la cobertura de clases. 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.

Se requiere especificar una ruta de acceso a los archivos de origen 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 la 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 informes HTML de cobertura de código. El directorio del informe 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 sus entradas de tarea. Para obtener más información, consulte Opciones de control y propiedades de tareas comunes.

Variables de salida

Ninguno.

Observaciones

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 para obtener informes de cobertura. La tarea admite formatos de resultados de cobertura populares, como Cobertura y JaCoCo.

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

Tareas como de pruebas de Visual Studio, .NET Core, Ant, Maven, Gulpy 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 resultados de cobertura de código de publicación independiente 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 ser antes de 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 Personalizar javaScript en la sección Ecosistemas de estos temas, que también incluye ejemplos para otros lenguajes.

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

Estibador

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 con un archivo de Docker sección para Docker.

Ver resultados

Para ver los resultados de la cobertura de código en la canalización, consulte Revisar los resultados de 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 es 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, se muestra el resumen y el informe de la última tarea. Los datos cargados anteriormente se omiten.

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 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 está cerca 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, después, seleccione el vínculo publicado :

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

  2. Junto al artefacto Report_ de cobertura de código *, 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 descrito 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
demandas Ninguno
funcionalidades de Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
restricciones de comandos Cualquier
variables settable 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 tarea Prueba
Requisito Descripción
Tipos de canalización YAML, compilación clásica
Se ejecuta en Agente, DeploymentGroup
demandas Ninguno
funcionalidades de Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo.
restricciones de comandos Cualquier
variables settable Cualquier
Versión del agente 2.102.0 o superior
Categoría de tarea Prueba

Consulte también