Partager via


Extensions de couverture de code

Cet article répertorie et décrit toutes les extensions Microsoft Testing Platform liées à la fonctionnalité de couverture du code.

Vous pouvez utiliser la fonctionnalité de couverture du code pour déterminer la proportion du code de votre projet testée par des tests codés tels que des tests unitaires. Pour apporter une protection efficace contre les bogues, vos tests doivent s’effectuer sur ou couvrir une proportion importante de votre code.

Couverture du code Microsoft

L’analyse de la couverture du code Microsoft est possible pour le code managé (CLR) et non managé (natif). L’instrumentation statique et dynamique est prise en charge. Cette extension est fournie dans le cadre de Microsoft.Testing.Extensions.CodeCoverage package NuGet.

Note

La couverture du code non managé (native) est désactivée par défaut dans l’extension. Utilisez des indicateurs EnableStaticNativeInstrumentation et EnableDynamicNativeInstrumentation pour l’activer si nécessaire. Pour plus d’informations sur la couverture de code non managé, consultez Instrumentation native statique et dynamique.

Importante

Le package est fourni avec la bibliothèque Microsoft .NET sous un modèle de licence à code source fermé, gratuit à employer.

Pour plus d’informations sur la couverture du code Microsoft, consultez sa page GitHub.

La couverture du code Microsoft fournit les options suivantes :

Option Description
--coverage Utilisez l'outil dotnet-coverage pour collecter la couverture de code.
--coverage-output Nom ou chemin du fichier de couverture produit. Par défaut, le fichier est TestResults/<guid>.coverage.
--coverage-output-format Format de fichier de sortie. Les valeurs prises en charge sont les suivantes : coverage, xmlet cobertura. La valeur par défaut est coverage.
--coverage-settings Paramètres de couverture du code XML..

Pour plus d’informations sur les options disponibles, consultez les paramètres et les exemples .

Couvre-lit

Importante

Le package NuGet coverlet.collector est conçu spécifiquement pour VSTest et ne peut pas être utilisé avec Microsoft.Testing.Platform.

Il n’existe actuellement aucune extension Coverlet, mais vous pouvez utiliser Coverlet .NET global tool.

En supposant que vous avez déjà installé l’outil global Coverlet, vous pouvez maintenant exécuter :

coverlet .\bin\Debug\net8.0\TestProject2.dll --target "dotnet" --targetargs "test .\bin\Debug\net8.0\TestProject2.dll --no-build"