Como: depurar while Running a teste in an ASP.NET solução
Você pode depurar testes de unidade e testes da Web que você está usando para testar projetos ASP.NET para Web.Você também pode depurar seu código de produção ASP.NET enquanto um teste está sendo executado.
No entanto, quando estiver testando código ASP.NET, o código de teste não é executado da maneira típica, sob o processo VSTestHost.Em vez disso, ele executa em qualquer processo do IIS, ou se seu site da Web for baseado em arquivo, em um processo ASP.NET Development Server.Como o teste é executado diferente, por exemplo, o processo de teste típicos, escolher o Depurar seleção opção na Janela Modo de Teste ou a Depurar testes selecionados opção no Editor de Lista de Testes não serve para depurar enquanto o teste está sendo executado.
Da mesma forma, código de produção ASP.NET não pode ser executado até a posição do cursor a menos que a depuração esteja ativada e o depurador esteja anexado ao Development Server do ASP.NET ou ao processo do IIS.
Em cada um dos procedimentos a seguir, você criar um projeto de site ASP.NET Web usando o Novo site caixa de diálogo.Na caixa de diálogo, você use a caixa de listagem Location para escolher um local para o site da Web.Essa opção determina o processo ao qual você posteriormente irá anexar o depurador e etapas a seguir para depurar ao executar um teste em uma solução ASP.NET.As duas opções são IIS e ASP.NET Development servidor.
Depuração durante a execução no IIS
Depuração durante a execução no ASP.NET Development servidor
Depuração durante a execução no IIS
No procedimento a seguir, você irá anexar o depurador a um processo.O nome do processo depende do sistema operacional que você está usando, porque o sistema operacional determina a versão do IIS está instalado.A tabela a seguir mostra qual processo é usado em cada sistema operacional.Para um sistema operacional na primeira coluna, use o nome do processo especificado na terceira coluna no Processos disponível o seçãoAnexar ao processo caixa de diálogo.
Operating System |
Processo host |
Nome do processo do ASP.NET |
Windows Server 2003 |
IIS 6,0 |
w3wp.exe |
Windows XP |
IIS 5,1 |
aspnet_wp.exe |
Windows 2000 |
IIS 5,0 |
aspnet_wp.exe |
Para depurar ao executar um teste de ASP.NET no IIS
Crie um projeto de site da Web ASP.NET que você deseje testar, e um teste de unidade ASP.NET para testá-lo.
Quando você criar este projeto Web site, no Novo site caixa de diálogo, selecionar HTTP ou FTP sistema autônomo a Local.Isso garante que o processo de host será IIS.
Para obter mais informações, consulte Como: Criar um teste de unidade ASP.NET.
Habilite a depuração do projeto ASP.NET Web.Para fazer isso, edite arquivo de configuração do projeto da Web.Se já tiver o seu projeto da Web. arquivo de configuração, vá para a etapa 4.Se não, adicionar uma agora: clicar com o botão direito do mouse o projeto Web site em sua solução e, em seguida, clique em Adicionar novo item.
A caixa de diálogo Add New Item é exibida.
Na caixa de diálogo Add New Item, clique em Web Configuration File e clique Add.
Um arquivo Web.config é adicionado ao seu projeto de site da Web.Para obter mais informações sobre como usar arquivos Web.config, consulte Como: Habilite depuração ASP.NET Applications.
No arquivo Web.config, altere a linha que lê <compilation debug="false"/> para <compilation debug="true"/>.
(Opcional) Definir pontos de interrupção no teste de unidade ASP.NET e no código de produção para seu site da Web.
Anexar o depurador ao processo do IIS.Para fazer isso, clique em Debug e clique Attach to Process.
A caixa de diálogo Attach to Process é exibida.
Em Available Processes, localize o nome do processo ao qual você deseja anexar o depurador.
Se o processo que você precisa não estiver sendo exibido, você pode exibir mais processos que estão sendo executados.Para fazer isso, verifique Show processes from all users e Show processes in all sessions.
Em Available Processes, clique no nome do processo e clique Attach.
Se o processo ao qual você precisa anexar não está sendo executado, clicar Cancelar e inicie o processo.Para fazer isso, no gerenciador de soluções, clicar com o botão direito do mouse o projeto Web site e, em seguida, clique em Exibir no navegador.Em seguida, clicar Depurar e, em seguida, clicar Anexar ao processo um mais time; o processo inicia a execução e é exibido em Processos disponível.Clique no nome processo e clique Attach.
Inicie o teste.
Para fazer isso, na janela Test View, clique com o botão direito do mouse no teste que você deseja depurar e selecione Debug Selection.
Observação: Ao executar testes, você pode escolher Executar seleção em vez de Depurar seleção.A diferença é que, se você optar por Depurar seleção, o depurador desconecta automaticamente após o teste terminar, mas se você optar por Executar seleção, o depurador permanece anexado.Você pode encontrar Executar seleção mais útil, especialmente se você planeja executar novamente o teste várias vezes durante a depuração e desejar ter que anexar novamente o processo de cada vez.Se você tiver optado por Executar seleção, desanexar o processo quando tiver terminado a depuração, escolher Parar depuração from the Depurar menu ou pressione deslocar + F5.
Depuração durante a execução no ASP.NET Development servidor
Para depurar ao executar um teste no ASP.NET Development servidor
Crie um projeto de site da Web ASP.NET que você deseje testar, e um teste de unidade ASP.NET para testá-lo.
Quando você cria este projeto de Web site no Novo site caixa de diálogo, selecionar sistema de arquivos, sistema autônomo a Local.Isso garante que o processo de host será o ASP.NET Development servidor.
Para obter mais informações, consulte Como: Criar um teste de unidade ASP.NET.
Habilite a depuração do projeto ASP.NET Web.Para fazer isso, edite arquivo de configuração do projeto da Web.Se já tiver o seu projeto da Web. arquivo de configuração, vá para a etapa 4.Se não, adicionar uma agora: clicar com o botão direito do mouse o projeto Web site em sua solução e, em seguida, clique em Adicionar novo item.
A caixa de diálogo Add New Item é exibida.
Na caixa de diálogo Add New Item, clique em Web Configuration File e clique Add.
Um arquivo Web.config é adicionado ao seu projeto de site da Web.Para obter mais informações sobre como usar arquivos Web.config, consulte Como: Habilite depuração ASP.NET Applications.
No arquivo Web.config, altere a linha que lê <compilation debug="false"/> para <compilation debug="true"/>.
Adicione a demonstrativo sistema.Diagnóstico.Debugger.Break() para o início do seu teste de unidade ASP.NET.
Observação: Pontos de interrupção em seu código serão atingidos somente se eles seguem essa demonstrativo sistema.Diagnóstico.Debugger.Break().
Observação: No C++, essa afirmação é sistema::Diagnóstico::Debugger::Break().Para obter informações sobre como usar testes unidade no Visual C++, consulte Testes de unidade e C++.
Defina pontos de interrupção no teste de unidade ASP.NET e no código de produção para o seu site.
Inicie o teste.
Para fazer isso, na Janela Modo de Teste, clicar com o botão direito do mouse no teste que você deseja executar e selecionar Executar seleção.
Assim que inicia o teste seja executado, uma caixa de diálogo é exibida.Esta caixa de diálogo indica que o programa encontrou um ponto de interrupção.
clicar Depurar, escolher a instância de Visual Studio que tem sua solução carregada e, em seguida, clicar Sim.
Visual Studio será anexado ao processo, com execução em pausa com a demonstrativo sistema.Diagnóstico.Debugger.Break(). Você pode escolher Continuar no menu Depurar ou pressione F5 para permitir a execução continue a seu próximo ponto de interrupção.
Observação: Ser-se de remover a demonstrativo sistema.Diagnóstico.Debugger.Break() quando tiver terminado a depuração.Caso contrário, a caixa de diálogo ponto de interrupção será exibido toda vez que você executar o teste.
Consulte também
Tarefas
Como: Depurar enquanto um teste de execução
Como: Criar um teste de unidade ASP.NET
Conceitos
Visão geral dos testes de unidade ASP.NET