この機能には、 Microsoft.Testing.Extensions.HotReload NuGet パッケージが必要です。
ヒント
Microsoft.Testing.Platform.MSBuild (MSTest、NUnit、xUnit ランナーによって推移的に含まれる) を使用する場合、この拡張機能は NuGet パッケージをインストールするときに自動的に登録されます。コードの変更は必要ありません。 この記事で指定されている手動登録は、 <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>設定して自動生成されたエントリ ポイントを無効にした場合にのみ必要です。
手動登録
var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHost.AddHotReloadProvider();
ホット リロード
ホット リロードを使用すると、アプリケーションの実行中にアプリのマネージド ソース コードを変更できます。手動でブレークポイントを一時停止またはヒットする必要はありません。 アプリの実行中にサポートされている変更を行い、Visual Studio の [コード変更の適用] ボタン 選択して編集内容を適用するだけです。
注
現在のバージョンは、"コンソール モード" でのみホット リロードをサポートするように制限されています。 現在、Visual Studio または Visual Studio Code のテスト エクスプローラーでは、ホット リロードはサポートされません。
注
パッケージには、制限付きの Microsoft.Testing.Platform Tools ライセンスが付属しています。 完全なライセンスは、https://www.nuget.org/packages/Microsoft.Testing.Extensions.HotReload/1.0.0/Licenseで入手できます。
TESTINGPLATFORM_HOTRELOAD_ENABLED 環境変数を "1"に設定することで、ホット リロードのサポートを簡単に有効にすることができます。
SDK スタイルのプロジェクトの場合は、"TESTINGPLATFORM_HOTRELOAD_ENABLED": "1" ファイルの environmentVariables セクションに launchSettings.json を追加できます。 次のスニペットは、ファイルの例を示しています。
{
"profiles": {
"Contoso.MyTests": {
"commandName": "Project",
"environmentVariables": {
"TESTINGPLATFORM_HOTRELOAD_ENABLED": "1"
}
}
}
}
.NET