Partilhar via


Hot Reload

Esta funcionalidade requer o pacote NuGet Microsoft.Testing.Extensions.HotReload .

Sugestão

Ao usar o Microsoft.Testing.Platform.MSBuild (incluído de forma transitiva pelos runners MSTest, NUnit e xUnit), esta extensão é registada automaticamente quando instala o pacote NuGet — não são necessárias alterações de código. O registo manual especificado neste artigo só é obrigatório se desativar o ponto de entrada gerado automaticamente ao definir <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>.

Registo manual

var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHost.AddHotReloadProvider();

Hot reload (recarregamento dinâmico)

O Hot reload permite-lhe modificar o código-fonte gerido da sua aplicação enquanto a aplicação está a correr, sem necessidade de pausar manualmente ou atingir um ponto de interrupção. Basta fazer uma alteração suportada enquanto a aplicação está a correr e selecionar o botão Aplicar alterações de código na Visual Studio para aplicar as suas edições.

Observação

A versão atual limita-se a suportar hot reload apenas em "modo consola". Atualmente, não há suporte para hot reload no Test Explorer para Visual Studio ou Visual Studio Code.

Observação

O pacote é fornecido com a licença restritiva Microsoft.Testing.Platform Tools. A licença completa está disponível em https://www.nuget.org/packages/Microsoft.Testing.Extensions.HotReload/1.0.0/License.

Pode facilmente ativar o suporte hot reload definindo a variável de ambiente TESTINGPLATFORM_HOTRELOAD_ENABLED para "1".

Para projetos no estilo SDK, você pode adicionar "TESTINGPLATFORM_HOTRELOAD_ENABLED": "1" na seção environmentVariables do arquivo launchSettings.json. O trecho a seguir mostra um arquivo de exemplo:

{
  "profiles": {
    "Contoso.MyTests": {
      "commandName": "Project",
      "environmentVariables": {
        "TESTINGPLATFORM_HOTRELOAD_ENABLED": "1"
      }
    }
  }
}