Compartir a través de


Volcados de fallo y congelación

Estas características requieren la instalación de paquetes NuGet adicionales, como se describe en cada sección.

Sugerencia

Al usar Microsoft.Testing.Platform.MSBuild (incluido transitivamente por MSTest, NUnit y ejecutores xUnit), estas extensiones se registran automáticamente al instalar sus paquetes NuGet, no se necesitan cambios de código. El registro manual especificado en este artículo solo es necesario si ha deshabilitado el punto de entrada generado automáticamente estableciendo <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>.

Volcado de memoria

Esta extensión permite crear un archivo de volcado de memoria si el proceso se bloquea. Esta extensión requiere el paquete NuGet Microsoft.Testing.Extensions.CrashDump .

Registro manual

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

Options

Opción Description
--crashdump Genera un archivo de volcado cuando el proceso de host de prueba se bloquea. Compatible con .NET 6.0 y versiones posteriores.
⁠-⁠-⁠crashdump-⁠filename Especifica el nombre de archivo del volcado de memoria.
--crashdump-type Especifica el tipo del volcado de memoria. Los valores válidos son Mini, Heap, Triage, Full. El valor predeterminado es Full. Para obtener más información, consulte Tipos de minivolcados.

Precaución

La extensión no es compatible con .NET Framework y se omitirá silenciosamente. Para obtener compatibilidad con .NET Framework, habilite la depuración postmortem con ProcDump de Sysinternals. Para obtener más información, consulte Habilitación de la depuración postmortem: Ventana Sysinternals ProcDump. La solución de depuración postmortem también recopilará información de bloqueo de procesos para .NET para que pueda evitar el uso de la extensión si tiene como destino aplicaciones de prueba de .NET y .NET Framework.

Volcado de memoria de bloqueo

Esta extensión le permite crear un archivo de volcado después de un tiempo de espera determinado. Esta extensión requiere el paquete NuGet Microsoft.Testing.Extensions.HangDump .

Registro manual

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

Options

Opción Description
--hangdump Genera un archivo de volcado en caso de que el proceso de host de prueba se bloquee.
-⁠-hangdump-filename Especifica el nombre de archivo del volcado de memoria.
--hangdump-timeout Especifica la duración de inactividad después de la cual se genera el volcado. El valor de tiempo de espera se especifica en uno de los siguientes formatos:
1.5h, , 1.5hour, 1.5hours
90m, 90min, , 90minute, 90minutes
5400s, 5400sec, 5400second, 5400seconds. El valor predeterminado es 30m (30 minutos).
--hangdump-type Especifica el tipo del volcado de memoria. Los valores válidos son Mini, Heap, Triage, Full. El valor predeterminado es Full. Para obtener más información, consulte Tipos de minivolcados.