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.
Seleccione la pestaña Resumen de compilación y, a continuación, seleccione el vínculo publicado:
Junto al artefacto Code Coverage Report_*, seleccione Descargar artefactos:
Cuando se descargue el informe de cobertura de código, extraiga el archivo .zip.
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í.
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 |