Freigeben über


Absturz- und Hängeabbilder

Für diese Features müssen zusätzliche NuGet-Pakete installiert werden, wie in den einzelnen Abschnitten beschrieben.

Tipp

Bei Verwendung von Microsoft.Testing.Platform.MSBuild (transitiv von MSTest, NUnit und xUnit runners eingeschlossen) werden diese Erweiterungen automatisch registriert, wenn Sie ihre NuGet-Pakete installieren – keine Codeänderungen erforderlich. Die in diesem Artikel angegebene manuelle Registrierung ist nur erforderlich, wenn Sie den automatisch generierten Einstiegspunkt durch Festlegen <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>deaktiviert haben.

Absturzabbild

Mit dieser Erweiterung können Sie eine Absturzabbilddatei erstellen, wenn der Prozess abstürzt. Für diese Erweiterung ist das Paket "Microsoft.Testing.Extensions.CrashDump NuGet" erforderlich.

Manuelle Registrierung

var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddCrashDumpProvider();

Options

Option Description
--crashdump Generiert eine Speicherabbilddatei, wenn der Testhostprozess abstürzt. Wird in .NET 6.0+ unterstützt.
⁠-⁠-⁠crashdump-⁠filename Gibt den Dateinamen des Dumps an.
--crashdump-type Gibt den Typ des Dumps an. Gültige Werte sind Mini, Heap, Triage, Full. Standardwert: Full. Weitere Informationen finden Sie unter Arten von Minidumps.

Vorsicht

Die Erweiterung ist nicht kompatibel mit .NET Framework und wird automatisch ignoriert. Für .NET Framework-Unterstützung aktivieren Sie das Postmortem-Debugging mit Sysinternals ProcDump. Weitere Informationen finden Sie unter Aktivieren des Postmortem-Debuggings: Window Sysinternals ProcDump. Die Postmortem-Debuglösung sammelt auch Prozessabsturzinformationen für .NET, sodass Sie die Verwendung der Erweiterung vermeiden können, wenn Sie sowohl auf .NET- als auch .NET Framework-Testanwendungen abzielen.

Absturzabbild

Mit dieser Erweiterung können Sie nach einem bestimmten Timeout eine Abbilddatei erstellen. Für diese Erweiterung ist das Microsoft.Testing.Extensions.HangDump NuGet-Paket erforderlich.

Manuelle Registrierung

var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddHangDumpProvider();

Options

Option Description
--hangdump Generiert eine Speicherabbilddatei, falls der Testhostprozess hängen bleibt.
-⁠-hangdump-filename Gibt den Dateinamen des Dumps an.
--hangdump-timeout Gibt die Dauer von keiner Aktivität an, nach der das Dump generiert wird. Der Timeoutwert wird in einem der folgenden Formate angegeben:
1.5h, 1.5hour1.5hours
90m 90min 90minute 90minutes
5400s, 5400sec, 5400second, 5400seconds. Standardwert: 30m (30 Minuten).
--hangdump-type Gibt den Typ des Dumps an. Gültige Werte sind Mini, Heap, Triage, Full. Standardwert: Full. Weitere Informationen finden Sie unter Arten von Minidumps.