Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Dessa funktioner kräver installation av ytterligare NuGet-paket, enligt beskrivningen i varje avsnitt.
Tips/Råd
När du använder Microsoft.Testing.Platform.MSBuild (ingår transitivt av MSTest, NUnit och xUnit-löpare) registreras dessa tillägg automatiskt när du installerar deras NuGet-paket – inga kodändringar behövs. Den manuella registrering som anges i den här artikeln krävs bara om du inaktiverade den automatiskt genererade startpunkten genom att ange <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>.
Kraschdump
Med det här tillägget kan du skapa en kraschdumpfil om processen kraschar. Det här tillägget kräver NuGet-paketet Microsoft.Testing.Extensions.CrashDump .
Manuell registrering
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddCrashDumpProvider();
Alternativ
| Alternativ | Description |
|---|---|
--crashdump |
Genererar en dumpfil när testvärdprocessen kraschar. Stöds i .NET 6.0+. |
--crashdump-filename |
Anger dumpens filnamn. |
--crashdump-type |
Anger typen av dump. Giltiga värden är Mini, Heap, Triage och Full. Standardinställningen är Full. Mer information finns i Typer av minidumpar. |
--crash-report |
[Endast Linux/macOS] Genererar en JSON-kraschrapport när testprocessen kraschar. Kombinera med --crashdump för att också generera en dumpfil. Kräver .NET 7+ när det används ensamt eller .NET 6+ i kombination med --crashdump. Stöds inte på Windows eftersom .NET-körningen ignorerar de underliggande miljövariablerna DOTNET_EnableCrashReport och DOTNET_EnableCrashReportOnly på Windows (dotnet/runtime#80191). Finns i MTP från och med version 2.3.0. |
--crash-report-if-supported |
Samma som --crash-report men ignoreras, med ett informationsmeddelande, på plattformar där kraschrapportgenerering inte stöds. Använd det här alternativet om du vill behålla samma kommandorad över CI-matriser som innehåller Windows. Ömsesidigt uteslutande med --crash-report. Finns i MTP från och med version 2.3.0. |
--crash-sequence |
Styr om en sekvensfil med de tester som startades och avslutades under testsessionen genereras tillsammans med kraschdumpen eller kraschrapporten. Filen gör det möjligt att identifiera de tester som kördes vid tidpunkten för kraschen utan att inspektera dumpen. Giltiga värden är on (standard; accepterar trueockså , enableoch 1) eller off (accepterar falseockså , disableoch 0). Finns i MTP från och med version 2.3.0. |
Försiktighet
Tillägget är inte kompatibelt med .NET Framework och ignoreras tyst. För att få stöd för .NET Framework aktiverar du postmortem-felsökning med Sysinternals ProcDump. Mer information finns i Enabling Postmortem Debugging: Window Sysinternals ProcDump. Postmortem-felsökningslösningen samlar också in processkraschinformation för .NET så att du kan undvika att använda tillägget om du riktar in dig på både .NET och .NET Framework-testprogram.
Hängdump
Med det här tillägget kan du skapa en dumpfil efter en viss tidsgräns. Det här tillägget kräver NuGet-paketet Microsoft.Testing.Extensions.HangDump .
Manuell registrering
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddHangDumpProvider();
Alternativ
| Alternativ | Description |
|---|---|
--hangdump |
Genererar en dumpfil om testvärdprocessen låser sig. |
--hangdump-filename |
Anger dumpens filnamn. Stöder följande platshållare: {pname} (testprogramnamn), {pid} (process-ID), {asm} (namn på inmatningssammansättning), {tfm} (målramverksmoniker) och {time} (tidsstämpel). Den äldre %p token (process-ID) stöds också för bakåtkompatibilitet. |
--hangdump-timeout |
Anger varaktigheten utan aktivitet efter vilken en minnesdump genereras. Tidsgränsvärdet anges i något av följande format:1.5h, 1.5hour, 1.5hours90m, 90min, , 90minute90minutes5400s, 5400sec, , 5400second5400seconds500ms, 500mil, , 500millisecond500milliseconds1d, 1day, 1days. Ett tomt tal (utan suffix) tolkas som millisekunder. Standardinställningen är 30m (30 minuter). |
--hangdump-type |
Anger typen av dump. Giltiga värden är Mini, Heap, Full, Triage (inte tillgängligt i .NET Framework) och None. Standardinställningen är Full. Mer information finns i Typer av minidumpar. Värdet None är tillgängligt i MTP från och med version 2.1.0. |
--hangdump-type-if-supported |
Samma som --hangdump-type, men faller tillbaka på den närmaste dumpningstyp som stöds, med ett informationsmeddelande, när den begärda typen inte är tillgänglig i den aktuella körningsmiljön. Till exempel stöds Triage endast på .NET (Core) och återgår till Mini på .NET Framework. Använd det här alternativet om du vill behålla samma kommandorad mellan CI-matriser som blandar .NET (Core) och .NET Framework. Giltiga värden är Mini, Heap, Full, Triageoch None. Ömsesidigt uteslutande med --hangdump-type. Finns i MTP från och med version 2.3.0. |