Delen via


Extensies voor codedekking

In dit artikel vindt u een overzicht van alle Microsoft Testing Platform extensies die betrekking hebben op de mogelijkheid tot codedekking.

U kunt de functie voor codedekking gebruiken om te bepalen welk deel van de code van uw project wordt getest door gecodeerde tests, zoals eenheidstests. Als u fouten effectief wilt beschermen, moeten uw tests oefenen of een groot deel van uw code behandelen.

Microsoft-codedekking

Microsoft Code Coverage-analyse is mogelijk voor zowel beheerde (CLR) als niet-beheerde (systeemeigen) code. Zowel statische als dynamische instrumentatie worden ondersteund. Deze extensie wordt geleverd als onderdeel van Microsoft.Testing.Extensions.CodeCoverage NuGet-pakket.

Notitie

Onbeheerde (systeemeigen) codedekking is standaard uitgeschakeld in de extensie. Gebruik vlaggen EnableStaticNativeInstrumentation en EnableDynamicNativeInstrumentation om deze indien nodig in te schakelen. Zie Statische en dynamische systeemeigen instrumentatie-voor meer informatie over onbeheerde codedekking.

Belangrijk

Het pakket wordt geleverd met de gesloten bronbibliotheek van Microsoft .NET en is vrij te gebruiken volgens een licentiemodel.

Zie de GitHub-paginavoor meer informatie over de dekking van Microsoft-code.

Microsoft Code Coverage biedt de volgende opties:

Optie Beschrijving
--coverage Verzamel de codedekking met behulp van het dotnet-dekkingsprogramma.
--coverage-output De naam of het pad van het geproduceerde dekkingsbestand. Het bestand is standaard TestResults/<guid>.coverage.
--coverage-output-format Uitvoerbestandindeling. Ondersteunde waarden zijn: coverage, xmlen cobertura. De standaardwaarde is coverage.
--coverage-settings instellingen voor XML-code-dekking.

Zie instellingen en voorbeeldenvoor meer informatie over de beschikbare opties.

Sprei

Belangrijk

Het coverlet.collector NuGet-pakket is speciaal ontworpen voor VSTest en kan niet worden gebruikt met Microsoft.Testing.Platform.

Er is momenteel geen Coverlet-extensie, maar u kunt Coverlet .NET global toolgebruiken.

Ervan uitgaande dat u het globale hulpprogramma Coverlet al hebt geïnstalleerd, kunt u nu het volgende uitvoeren:

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