Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
İpucu
Microsoft.Testing.Platform.MSBuild (MSTest, NUnit ve xUnit çalıştırıcıları tarafından geçişli olarak dahil) kullanılırken, NuGet paketlerini yüklediğinizde kod kapsamı uzantıları otomatik olarak kaydedilir; kod değişikliği gerekmez.
Birim testleri gibi kodlanmış testler tarafından test edilen project kodunuzun oranını belirlemek için kod kapsamı özelliğini kullanabilirsiniz. Hatalara karşı etkili bir şekilde koruma sağlamak için testlerinizin kodunuzun büyük bir kısmını alıştırma yapması veya kapsaması gerekir.
Microsoft kod kapsamı
Microsoft Kod Kapsamı analizi hem yönetilen (CLR) hem de yönetilmeyen (yerel) kod için mümkündür. Hem statik hem de dinamik izleme desteklenir. Bu uzantı , Microsoft.Testing.Extensions.CodeCoverage NuGet paketini gerektirir.
Uyarı
Yönetilmeyen (yerel) kod kapsamı, uzantıda varsayılan olarak devre dışı bırakılır. Gerekirse etkinleştirmek için EnableStaticNativeInstrumentation ve EnableDynamicNativeInstrumentation bayraklarını kullanın.
Yönetilmeyen kod kapsamı hakkında daha fazla bilgi için statik ve dinamik yerleşik izlemebölümüne bakın.
Önemli
Paket, kapalı kaynaklı ve kullanım için ücretsiz olan Microsoft .NET kitaplığını içeren bir lisanslama modeli ile gönderilir.
Microsoft kod kapsamı hakkında daha fazla bilgi için GitHub sayfasına bakın.
Options
| Seçenek | Description |
|---|---|
--coverage |
dotnet-coverage aracını kullanarak kod kapsamını toplayın. |
--coverage-output |
Üretilen kapsam dosyasının adı veya yolu. Varsayılan olarak, dosya TestResults/<guid>.coverageolarak ayarlanır. |
--coverage-output-format |
Çıkış dosyası biçimi. Desteklenen değerler şunlardır: coverage, xmlve cobertura. Varsayılan coverage değeridir. |
--coverage-settings |
XML kod kapsamı ayarları. |
Kullanılabilir seçenekler hakkında daha fazla bilgi için bkz. settings ve samples.
Uyarı
Microsoft.Testing.Extensions.CodeCoverage aracında varsayılan değer IncludeTestAssembly, VSTest'te ise eski değer false yerine true olmuştur. Bu, test projelerinin varsayılan olarak dışlandığı anlamına gelir. Daha fazla bilgi için bkz. Kod Kapsamı yapılandırması.
Sürüm uyumluluğu
Aşağıdaki tabloda Microsoft.Testing.Extensions.CodeCoverage ile Microsoft.Testing.Platform'un farklı sürümleri arasındaki uyumluluk gösterilmektedir:
| 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 |
Uyarı
En iyi uyumluluk ve en son özellikler için her iki paketin de en son sürümlerini birlikte kullanmanız önerilir.
Yatak örtüsü
Coverlet Microsoft Test Platformu Tümleştirmesi (coverlet.MTP), Microsoft.Testing.Platform için coverlet.collector işlevselliğini uygulayan yerli bir uzantıdır.
Test projenize coverlet.MTP NuGet paketini ekleyin:
dotnet add package coverlet.MTP
Kod kapsamını toplamak için testlerinizi şu bayrakla --coverlet çalıştırın:
dotnet test --coverlet
Test yürütülebilir dosyanızı --coverlet bayrağını kullanarak çalıştırabilirsiniz.
dotnet exec <test-assembly.dll> --coverlet
Test çalıştırmasının ardından geçerli dizinde sonuçları içeren bir coverage.json dosya oluşturulur.
Options
| Seçenek | Description |
|---|---|
--coverlet |
Kod kapsamı veri toplamayı etkinleştirin. |
--coverlet-output-format <format> |
Kapsam raporu için çıkış biçimleri. Desteklenen biçimler: json, lcov, opencover, coberturave teamcity. Birden fazla format eklemek için birden çok kez belirtin. |
--coverlet-include <filter> |
gibi [Assembly]Typefiltrelerle eşleşen derlemeler ekleyin. Daha fazla filtre eklemek için birden fazla kez tekrar edin. |
--coverlet-include-directory <path> |
Kaynak dosyalar için ek dizinler ekleyin. Birden çok kez belirterek daha fazla dizin ekleyin. |
--coverlet-exclude <filter> |
gibi [Assembly]Typefiltrelerle eşleşen derlemeleri hariç tutun. Daha fazla filtre eklemek için birden fazla kez tekrar edin. |
--coverlet-exclude-by-file <pattern> |
Glob desenleri ile eşleşen kaynak dosyaları hariç tutun. Daha fazla desen eklemek için birden çok kez tanımlayın. |
--coverlet-exclude-by-attribute <attribute> |
Belirli özniteliklerle dekore edilmiş yöntemleri veya sınıfları hariç tutun. Daha fazla öznitelik eklemek için birden çok kez belirtin. |
--coverlet-include-test-assembly |
Test derlemesini kapsam raporuna ekleyin. |
--coverlet-single-hit |
Koddaki her konum için isabet sayısını bir ile sınırlayın. |
--coverlet-skip-auto-props |
Kapsam içinde otomatik uygulanan özellikleri atlayın. |
--coverlet-does-not-return-attribute <attribute> |
Geri dönmeyen olarak yöntemleri işaretleyen öznitelikler. Daha fazla öznitelik eklemek için birden çok kez belirtin. |
--coverlet-exclude-assemblies-without-sources <value> |
Kaynak kodu olmayan derlemeleri dışlayın. Değerler: MissingAll, MissingAnyve None. |
Daha fazla bilgi için bkz. coverlet. MTP belgeleri.