Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Sugerencia
Cuando se usa Microsoft.Testing.Platform.MSBuild (incluido transitivamente por los motores de MSTest, NUnit y xUnit), las extensiones de cobertura de código se registran automáticamente al instalar sus paquetes NuGet, y no se necesitan cambios de código.
Puede usar la característica de cobertura de código para determinar qué proporción del código del proyecto se está probando mediante pruebas codificadas, como pruebas unitarias. Para protegerse con eficacia los errores, las pruebas deberían ensayar o cubrir una proporción considerable del código.
Cobertura de código de Microsoft
El análisis de cobertura de código de Microsoft es posible para código administrado (CLR) y no administrado (nativo). Se admite la instrumentación estática y dinámica. Esta extensión requiere el paquete NuGet Microsoft.Testing.Extensions.CodeCoverage .
Nota:
La cobertura de código no administrado (nativo) está deshabilitada en la extensión de manera predeterminada. Use las marcas EnableStaticNativeInstrumentation y EnableDynamicNativeInstrumentation para habilitarla si es necesario.
Para obtener más información sobre la cobertura de código no administrado, consulte Instrumentación Nativa Estática y Dinámica.
Importante
El paquete se envía con la biblioteca Microsoft .NET, que tiene un modelo de licencia de código cerrado y de uso gratuito.
Para obtener más información acerca de la cobertura de código de Microsoft, consulte su Página de GitHub.
Options
| Opción | Description |
|---|---|
--coverage |
Recopile la cobertura de código mediante la herramienta dotnet-coverage. |
--coverage-output |
Nombre o ruta de acceso del archivo de cobertura generado. De forma predeterminada, el archivo es TestResults/<guid>.coverage. |
--coverage-output-format |
Formato del archivo de salida. Los valores admitidos son: coverage, xml y cobertura. El valor predeterminado es coverage. |
--coverage-settings |
Configuración de cobertura de código XML. |
Para obtener más información sobre las opciones disponibles, consulte la configuración y los ejemplos .
Nota:
El valor predeterminado de IncludeTestAssembly en Microsoft.Testing.Extensions.CodeCoverage es false, mientras que solía estar true en VSTest. Esto significa que los proyectos de prueba se excluyen de forma predeterminada. Para obtener más información, consulte Configuración de cobertura de código.
Compatibilidad de versiones
En la tabla siguiente se muestra la compatibilidad entre diferentes versiones de Microsoft.Testing.Extensions.CodeCoverage y Microsoft.Testing.Platform:
| Microsoft.Testing.Extensions.CodeCoverage | Microsoft.Testing.Platform |
|---|---|
| 18.1.x | 2.0.x |
| 18.0.x | 1.8.x |
| 17.14.x | 1.6.2 |
Nota:
Para obtener la mejor compatibilidad y las características más recientes, se recomienda usar las versiones más recientes de ambos paquetes juntos.
Cubrecama
Coverlet Microsoft Testing Platform Integration (coverlet.MTP) es una extensión nativa para Microsoft.Testing.Platform que implementa funcionalidad de coverlet.collector.
Agregue el coverlet.MTP paquete NuGet al proyecto de prueba:
dotnet add package coverlet.MTP
Para recopilar cobertura de código, ejecute las pruebas con la --coverlet marca :
dotnet test --coverlet
O bien, ejecute el archivo ejecutable de prueba con la --coverlet marca :
dotnet exec <test-assembly.dll> --coverlet
Después de la ejecución de la prueba, se genera un coverage.json archivo que contiene los resultados en el directorio actual.
Options
| Opción | Description |
|---|---|
--coverlet |
Habilite la recopilación de datos de cobertura de código. |
--coverlet-output-format <format> |
Formatos de salida para el informe de cobertura. Formatos admitidos: json, lcov, opencover, coberturay teamcity. Especifique varias veces para incluir más de un formato. |
--coverlet-include <filter> |
Incluir ensamblajes que coincidan con filtros, como [Assembly]Type. Especifique varias veces para agregar más filtros. |
--coverlet-include-directory <path> |
Incluya directorios adicionales para los archivos de código fuente. Especifique varias veces para agregar más directorios. |
--coverlet-exclude <filter> |
Excluya los ensamblados que coinciden con filtros, como [Assembly]Type. Especifique varias veces para agregar más filtros. |
--coverlet-exclude-by-file <pattern> |
Excluya los archivos de origen que coincidan con los patrones globales. Especifique varias veces para agregar más patrones. |
--coverlet-exclude-by-attribute <attribute> |
Excluya métodos o clases decorados con atributos específicos. Repita la especificación para añadir más atributos. |
--coverlet-include-test-assembly |
Incluya el ensamblado de prueba en el informe de cobertura. |
--coverlet-single-hit |
Limite el número de visitas a una para cada ubicación del código. |
--coverlet-skip-auto-props |
Excluya las propiedades implementadas automáticamente en la cobertura. |
--coverlet-does-not-return-attribute <attribute> |
Atributos que marcan los métodos como que no devuelven valores. Repita la especificación para añadir más atributos. |
--coverlet-exclude-assemblies-without-sources <value> |
Excluir ensamblados sin código fuente. Valores: MissingAll, MissingAnyy None. |
Para obtener más información, consulte coverlet. Documentación de MTP.