Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek uvádí a vysvětluje všechna rozšíření Microsoft.Testing.Platform související s funkcí pokrytí kódu.
Pomocí funkce pokrytí kódu můžete zjistit, jaký podíl kódu vašeho projektu je testován kódovanými testy, jako jsou jednotkové testy. Aby byly účinné proti chybám, měly by vaše testy zahrnovat nebo obsáhnout velkou část vašeho kódu.
Pokrytí kódu Microsoftu
Analýza pokrytí kódu Microsoftu je možná pro spravovaný (CLR) i nespravovaný (nativní) kód. Podporují se statické i dynamické instrumentace. Toto rozšíření se dodává jako součást balíčku NuGet Microsoft.Testing.Extensions.CodeCoverage.
Poznámka
Ve výchozím nastavení je v rozšíření zakázané nespravované (nativní) pokrytí kódu. V případě potřeby je povolte pomocí příznaků EnableStaticNativeInstrumentation a EnableDynamicNativeInstrumentation.
Další informace o nespravovaném pokrytí kódu naleznete v tématu Statické a dynamické nativní instrumentování.
Důležitý
Balíček se dodává s uzavřenou zdrojovou knihovnou Microsoft .NET s modelem licence k bezplatnému použití.
Další informace o pokrytí kódu Microsoftu najdete na stránce GitHubu.
Microsoft Code Coverage nabízí následující možnosti:
| Možnost | Popis |
|---|---|
--coverage |
Ke shromáždění pokrytí kódu použijte nástroj dotnet-coverage. |
--coverage-output |
Název nebo cesta vytvořeného souboru pokrytí. Ve výchozím nastavení je soubor TestResults/<guid>.coverage. |
--coverage-output-format |
Formát výstupního souboru Podporované hodnoty jsou: coverage, xmla cobertura. Výchozí hodnota je coverage. |
--coverage-settings |
nastavení pokrytí kódu XML. |
Další informace o dostupných možnostech viz nastavení a vzorky .
Poznámka
Výchozí hodnota IncludeTestAssembly v Microsoft.Testing.Extensions.CodeCoverage je false, zatímco se používá v true VSTest. To znamená, že projekty testů jsou ve výchozím nastavení vyloučené. Další informace najdete v tématu Konfigurace pokrytí kódu.
Kompatibilita verzí
Následující tabulka ukazuje kompatibilitu mezi různými verzemi microsoft.Testing.Extensions.CodeCoverage a 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 |
Poznámka
Nejlepší kompatibilitu a nejnovější funkce doporučujeme používat společně s nejnovějšími verzemi obou balíčků.
Pokrývka
Důležitý
Balíček NuGet coverlet.collector je navržený speciálně pro VSTest a nelze ho použít s Microsoft.Testing.Platform.
V současné době neexistuje žádné rozšíření Coverlet, ale můžete použít Coverlet .NET globální nástroj.
Za předpokladu, že jste už nainstalovali globální nástroj Coverlet, můžete teď spustit:
coverlet .\bin\Debug\net8.0\TestProject2.dll --target "dotnet" --targetargs "test .\bin\Debug\net8.0\TestProject2.dll --no-build"