이러한 기능을 사용하려면 각 섹션에 설명된 대로 추가 NuGet 패키지를 설치해야 합니다.
팁 (조언)
Microsoft.Testing.Platform.MSBuild(MSTest, NUnit 및 xUnit 실행기에서 전이적으로 포함)를 사용하는 경우 이러한 확장은 NuGet 패키지를 설치할 때 자동으로 등록되며 코드 변경이 필요하지 않습니다. 이 문서에서 지정한 수동 등록은 자동 생성된 진입점을 설정 <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>하여 사용하지 않도록 설정한 경우에만 필요합니다.
크래시 덤프
이 확장을 사용하면 프로세스가 충돌하는 경우 크래시 덤프 파일을 만들 수 있습니다. 이 확장에는 Microsoft.Testing.Extensions.CrashDump NuGet 패키지가 필요합니다.
수동 등록
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddCrashDumpProvider();
옵션
| Option | Description |
|---|---|
--crashdump |
테스트 호스트 프로세스가 충돌할 때 덤프 파일을 생성합니다. .NET 6.0 이상에서 지원됩니다. |
--crashdump-filename |
덤프의 파일 이름을 지정합니다. |
--crashdump-type |
덤프의 형식을 지정합니다. 유효한 값은 Mini, Heap, Triage, Full. 기본값은 Full. 자세한 내용은 미니 덤프 형식을 참조하세요. |
주의
확장은 .NET Framework와 호환되지 않으며 자동으로 무시됩니다. .NET Framework 지원의 경우 Sysinternals ProcDump를 사용하여 사후 관리 디버깅을 사용하도록 설정합니다. 자세한 내용은 Windows Sysinternals ProcDump: 사후 디버깅 사용을 참조하세요. 또한 사후 관리 디버깅 솔루션은 .NET 대한 프로세스 크래시 정보를 수집하므로 .NET 및 .NET Framework 테스트 애플리케이션을 모두 대상으로 하는 경우 확장을 사용하지 않도록 할 수 있습니다.
덤프 중단
이 확장을 사용하면 지정된 시간 제한 후에 덤프 파일을 만들 수 있습니다. 이 확장에는 Microsoft.Testing.Extensions.HangDump NuGet 패키지가 필요합니다.
수동 등록
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddHangDumpProvider();
옵션
| Option | Description |
|---|---|
--hangdump |
테스트 호스트 프로세스가 중단되는 경우 덤프 파일을 생성합니다. |
--hangdump-filename |
덤프의 파일 이름을 지정합니다. |
--hangdump-timeout |
덤프가 생성된 후 활동이 없는 기간을 지정합니다. 시간 제한 값은 다음 형식 중 하나로 지정됩니다.1.5h, 1.5hour, 1.5hours90m, 90min, , 90minute, 90minutes5400s, 5400sec, 5400second. 5400seconds 기본값은 30m(30분)입니다. |
--hangdump-type |
덤프의 형식을 지정합니다. 유효한 값은 Mini, Heap, Triage, Full. 기본값은 Full. 자세한 내용은 미니 덤프 형식을 참조하세요. |
.NET