이 문서에서는 코드 검사 기능과 관련된 모든 Microsoft.Testing.Platform 확장을 나열하고 설명합니다.
코드 검사 기능을 사용하여 단위 테스트와 같은 코딩된 테스트에서 테스트 중인 프로젝트 코드의 비율을 확인할 수 있습니다. 버그를 효과적으로 방지하려면 테스트에서 코드의 상당 부분을 테스트하거나 포함하도록 해야 합니다.
Microsoft 코드 커버리지
Microsoft 코드 검사 분석은 관리형(CLR) 및 관리되지 않는(네이티브) 코드 모두에 대해 가능합니다. 정적 계측과 동적 계측이 모두 지원됩니다. 이 확장은 Microsoft.Testing.Extensions.CodeCoverage NuGet 패키지의 일부로 제공됩니다.
메모
기본적으로 확장에서 관리되지 않는(네이티브) 코드 검사를 사용할 수 없습니다. 필요한 경우 플래그 EnableStaticNativeInstrumentation
및 EnableDynamicNativeInstrumentation
사용하여 사용하도록 설정합니다.
관리되지 않는 코드 검사에 대한 자세한 내용은 정적 및 동적 네이티브 계측참조하세요.
중요하다
패키지는 무료로 사용 가능한 폐쇄 소스의 Microsoft .NET 라이브러리 라이선스 모델과 함께 제공됩니다.
Microsoft 코드 검사에 대한 자세한 내용은 GitHub 페이지참조하세요.
Microsoft 코드 커버리지에서는 다음 옵션을 제공합니다.
옵션 | 설명 |
---|---|
--coverage |
dotnet-coverage 도구를 사용하여 코드 커버리지를 수집합니다. |
--coverage-output |
생성된 커버리지 파일의 이름 또는 경로입니다. 기본적으로 파일은 TestResults/<guid>.coverage . |
--coverage-output-format |
출력 파일 형식입니다. 지원되는 값은 coverage , xml 및 cobertura . 기본값은 coverage . |
--coverage-settings |
XML 코드 검사 설정. |
사용 가능한 옵션에 대한 자세한 내용은 설정 및 샘플참조하세요.
메모
Microsoft.Testing.Extensions.CodeCoverage의 IncludeTestAssembly
기본값은 false
이고, VSTest에서는 true
였습니다. 즉, 테스트 프로젝트는 기본적으로 제외됩니다. 자세한 내용은 코드 검사 구성을 참조하세요.
장식용 침대 커버
중요하다
coverlet.collector
NuGet 패키지는 VSTest용으로 특별히 설계되었으며 Microsoft.Testing.Platform
사용할 수 없습니다.
현재 Coverlet 확장은 없지만 Coverlet .NET 전역 도구을 사용할 수 있습니다.
Coverlet 전역 도구를 이미 설치했다고 가정하면 이제 다음을 실행할 수 있습니다.
coverlet .\bin\Debug\net8.0\TestProject2.dll --target "dotnet" --targetargs "test .\bin\Debug\net8.0\TestProject2.dll --no-build"
.NET