これらの機能では、各セクションで説明されているように、追加の 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 | [説明] |
|---|---|
--crashdump |
テスト ホスト プロセスがクラッシュしたときにダンプ ファイルを生成します。 .NET 6.0 以降でサポートされています。 |
--crashdump-filename |
ダンプのファイル名を指定します。 |
--crashdump-type |
ダンプの種類を指定します。 有効な値は、 Mini、 Heap、 Triage、 Fullです。 既定値は Full です。 詳細については、「 ミニ ダンプの種類」を参照してください。 |
注意事項
拡張機能は .NET Framework と互換性がありません。暗黙的に無視されます。 .NET Framework のサポートでは、Sysinternals ProcDump を使用して事後デバッグを有効にします。 詳細については、「 事後デバッグの有効化: ウィンドウ Sysinternals ProcDump」を参照してください。 事後デバッグ ソリューションでは.NET のプロセス クラッシュ情報も収集されるため、.NET と .NET Framework の両方のテスト アプリケーションを対象としている場合は、拡張機能の使用を回避できます。
ハング ダンプ
この拡張機能を使用すると、特定のタイムアウト後にダンプ ファイルを作成できます。 この拡張機能には、 Microsoft.Testing.Extensions.HangDump NuGet パッケージが必要です。
手動登録
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHostControllers.AddHangDumpProvider();
オプション
| Option | [説明] |
|---|---|
--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