診断

これらの拡張機能は、テストの実行中に証拠をキャプチャするため、事後にエラーを診断できます。 各セクションで説明されているように、各拡張機能には追加の NuGet パッケージが必要です。

ヒント

Microsoft.Testing.Platform.MSBuild (MSTest、NUnit、xUnit ランナーによって推移的に含まれる) を使用する場合、これらの拡張機能は NuGet パッケージをインストールするときに自動的に登録されます。コードの変更は必要ありません。 この記事で指定されている手動登録は、 <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>設定して自動生成されたエントリ ポイントを無効にした場合にのみ必要です。

プロセス レベルの診断については、関連する クラッシュ ダンプとハング ダンプ 拡張機能を参照してください。この拡張機能は、テスト ホストがクラッシュまたはハングしたときにプロセス ダンプ ファイルを収集します。

ビデオ レコーダー

ビデオ レコーダーは、テストの実行中に画面を記録し、キャプチャしたビデオをアーティファクトとしてテスト セッションにアタッチします。 記録は実行ごとにオプトインされ、外部の ffmpeg プロセスによって駆動されます。これは、 PATH で使用可能であるか、明示的なパスを使用して設定する必要があります。 この拡張機能には、Microsoft.Testing.Extensions.VideoRecorder NuGet パッケージが必要です。

Note

バージョン 2.3.0 以降の MTP で使用できます。 この拡張機能は試験段階であり、オプションと出力形式は将来のバージョンで変更される可能性があります。

手動登録

var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddVideoRecorderProvider();

オプション

オプション MTP バージョン Description
--capture-video 2.3.0 画面記録を有効にします。 省略可能な値は保持を制御します。 on-failure (既定値) は、失敗したテストの場合にのみ映像を保持し、 always はすべてのテストの映像を保持します。
--capture-video-source 2.3.0 キャプチャ ソースを設定します。 有効な値は screen (既定値) と windowです。 --capture-video が必要です。
--capture-video-granularity 2.3.0 レコーダーがテストごとに 1 つのビデオを生成するか、実行全体に対して 1 つの章付きビデオを生成するかを設定します。 有効な値は test (既定値) と sessionです。 --capture-video が必要です。
--capture-video-max-duration 2.3.0 最後の N 秒間の映像を保持することで、長時間の実行でディスク使用量を制限します。 この値は、正の整数値 (秒) です。 --capture-video が必要です。
--capture-video-chapters 2.3.0 セッションごとのビデオにチャプター ブックマークを追加するかどうかを設定します。 有効な値は on (既定値) と offです。 --capture-video が必要です。
--capture-video-args 2.3.0 基になるレコーダー (ffmpeg) に追加の引数を渡します。 --capture-video が必要です。