Microsoft。Testing.Platform (MTP) の機能

MTP には組み込みの機能が付属しており、NuGet パッケージを使用して拡張できます。

Microsoft.Testing.Platform.MSBuild (MSTest、NUnit、xUnit ランナーによって推移的に含まれる) を使用する場合、拡張機能 NuGet パッケージのインストールは必要なだけで済みます。拡張機能は自動的に検出され、登録され、エントリ ポイントが自動的に生成されます。

<GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>設定して自動生成されたエントリ ポイントをオプトアウトする場合は、Main メソッドに拡張機能を手動で登録する必要があります。 各拡張機能ページには、手動登録呼び出しが文書化されています。

NuGet パッケージを必要とする拡張機能には、独自のライセンス モデル (少し緩やかなもの) が付属しています。使用する拡張機能に関連付けられているライセンスを必ず参照してください。

一部の拡張機能は 試験段階です。API には TPEXP 診断で注釈が付けられます。将来のリリースで変更される可能性があるため、それらを使用するには診断を確認する必要があります。 試験的な拡張機能は、次の一覧でマークされています (試験段階)。

ここから始める

目標に基づいて次のパスを使用します。

シナリオ別に選択する

  • ターミナル出力をカスタマイズする必要がある: ターミナル出力 (組み込み)
  • TRX レポートまたは Azure DevOps レポートが必要: Test reports (拡張機能)
  • GitHub Actionsネイティブ出力 (ログ グループ、注釈、ジョブの概要) が必要です:レポートGitHub Actions (拡張機能、試験段階)
  • カバレッジ データが必要です: コード カバレッジ (拡張機能)
  • クラッシュまたはハングの診断が必要: クラッシュ ダンプとハング ダンプ (拡張機能)
  • 実行中に画面を記録する必要がある: 診断 (拡張機能、試験段階)
  • パッケージ アプリのテスト ホストをデプロイして起動する必要がある: テスト ホストのデプロイ (拡張機能、試験段階)
  • プラットフォーム ログを Microsoft.Extensions.Logging: Microsoft.Extensions 統合 (拡張機能、実験段階) 経由でルーティングする必要があります
  • 失敗したテストを再試行する必要がある: 再試行 (拡張機能)
  • ホットリロードのサポートが必要です: ホットリロード (拡張機能)
  • Microsoft Fakes のサポートが必要: Microsoft Fakes (拡張機能)
  • OpenTelemetryのトレースとメトリックが必要: OpenTelemetry (拡張機能)
  • テレメトリ データの収集とオプトアウト: テレメトリ (拡張機能)

組み込み機能

これらの機能はコア プラットフォームの一部であり、追加の NuGet パッケージは必要ありません。

ターミナル出力

ターミナルへの状態と進行状況の報告: 出力モード、ANSI サポート、進行状況インジケーター。

拡張機能の特長

これらの機能には、NuGet パッケージをインストールする必要があります。

テスト レポート

テスト レポート ファイル (TRX、HTML、JUnit、CTRF、Azure DevOps、GitHub Actions) を生成します。

コードカバレッジ

テストの実行中にコード カバレッジ データを収集します。

クラッシュ ダンプとハング ダンプ

テスト ホストがクラッシュまたはハングしたときにプロセス ダンプ ファイルを収集します。

OpenTelemetry

テストの実行中に OpenTelemetry を使用してトレースとメトリックを出力します。

再試行

構成可能なポリシーを使用して失敗したテストを再試行します。

ホット リロード

ホット リロードのサポートを使用してテストを実行し、迅速な反復を行います。

Microsoft Fakes

スタブと shim に Microsoft Fakes を使用するテストを実行します。

テレメトリ

テレメトリの収集。 オプトアウトする方法と収集されるデータについて説明します。

診断 (試験段階、MTP 2.3.0 で導入)

ビデオ レコーダーで画面を記録するなど、実行を診断するための証拠をキャプチャします。

テスト ホストのデプロイ (MTP 2.3.0 で導入された試験段階)

パッケージ アプリ テスト ホストの展開や起動など、テスト ホストの展開方法と起動場所を制御します。

Microsoft。拡張機能の統合 (試験段階、MTP 2.3.0 で導入)

Microsoft.Extensions.* パイプラインを介してログを転送するなど、アプリケーションで既に使用されているMicrosoft.Extensions.Logging ライブラリにプラットフォームと拡張機能の診断をブリッジします。