共用方式為


熱重新載入

此功能需要 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();

熱重載

熱重載可讓您在應用程式執行時修改應用程式的「managed」原始程式碼,而不需要手動暫停或設置斷點。 只需在應用程式運行時進行支援的變更,然後在 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"
      }
    }
  }
}