Partilhar via


Testando Sites e Serviços da Web em um Ambiente de Equipe

Quando você primeiro teste um site, você normalmente teste-lo em seu próprio computador.Mas talvez também deseja compartilhar seus testes com colegas de equipe.Ou, em um ambiente mais formal, você pode trabalhar em um projeto em que você verifique o código de produção e testes no controle de fonte, após o qual um laboratório de compilação usa seu testes para teste seu código.Em cada um desses cenários, testes de unidade devem ser capazes de identificar o Web site que estão testando, se esse site está no computador local ou não.Para ativar o mecanismo de teste identificar o site, use a variável %PathToWebRoot%, conforme descrito sistema autônomo seções a seguir deste tópico.

Opções de servidor

Se você estiver desenvolvendo um site ou um serviço da Web, você pode executá-lo utilizando ou o ASP.NET Development Server (Servidor de Desenvolvimento ASP.NET) ou um servidor Web, como o IIS.Essa opção também determina sistema autônomo você teste seu serviço Web ou site da Web, conforme descrito sistema autônomo seções a seguintes:

  • Testando Serviços da Web com o ASP Development Server

  • Testando Sites da Web com o ASP.NET Development Server

Relacionada a testes: Mais informações

Você pode usar unidade teste sistema autônomo para teste sistema autônomo métodos Web de uma Web de serviços, conforme descrito em Testando serviços da Webe teste a lógica de negócios do site da Web, conforme descrito em Visão geral dos testes de unidade ASP.NET. Além disso, você pode usar testes da Web para testar páginas da Web, sistema autônomo descrito em Trabalhando com Testes da Web.

Testando Serviços da Web com o ASP Development Server

Para testar serviços da Web utilizando o ASP.NET Development Server em seu sistema de arquivos local, marque o método de teste da unidade com o atributo AspNetDevelopmentServer.Para identificar a localização do site da Web, especifique o caminho para seu diretório raiz em um parâmetro do atributo AspNetDevelopmentServer.Para fazer isso, use o %PathToWebRoot% variável, conforme explicado na Configuração pathToWebRoot.Para obter mais informações, consulte Testando serviços da Web.

Para obter mais informações sobre a utilização e a sintaxe do atributo AspNetDevelopmentServer, consulte AspNetDevelopmentServerAttribute e Testando serviços da Web.

Testando Sites da Web com o ASP.NET Development Server

Quando você gera uma unidade de teste ASP.NET para testar um site da Web no sistema de arquivos do seu computador, o teste é marcado com o atributo AspNetDevelopmentServerHost.Este atributo requer o pathToWebApp parâmetro. Por padrão, um teste de unidade ASP.NET gerado inclui a %PathToWebRoot% variável na pathToWebApp parâmetro. O valor dessa variável é conjunto conforme descrito em pathToWebRoot conjunto seletiva.Para obter mais informações sobre como a teste sites da Web com ASP.NET Development servidor, consulte Visão geral dos testes de unidade ASP.NET.

Para obter mais informações sobre a utilização e a sintaxe do atributo AspNetDevelopmentServerHost, consulte AspNetDevelopmentServerHostAttribute e Visão geral dos testes de unidade ASP.NET.

Configuração pathToWebRoot

Em todo teste de unidade que será usado para testar um site ou um serviço Web que está sendo executado no ASP.NET Development servidor, você deve especificar a seqüência de caracteres %PathToWebRoot%\\ <websitename> in the pathToWebApp parâmetro do atributo AspNetDevelopmentServer ou AspNetDevelopmentServerHost. Especifique o parâmetro da seguinte forma:

  • Use a seqüência de caracteres %PathToWebRoot% textual. Utilize esta sequência de caracteres mesmo se você estiver executando no momento os testes somente no seu próprio computador.Isso fornece os testes a flexibilidade necessária para ser compartilhado com outras pessoas e executados em Team Foundation Build.

    Observação:

    Quando você teste vários sites em seu próprio computador e esses sites da Web não compartilham um diretório raiz comum, você poderá codificar o caminho para o site da Web em cada teste em vez de usar o %PathToWebRoot% variável. Importante: codificar esse caminho somente quando testes localmente, porque isso impede o compartilhamento testa para este site da Web mais amplo.Lembre-se de alterar o caminho para incluir o %PathToWebRoot% variável antes de ter o Web site testado por outras pessoas da sua equipe ou no Team Foundation Build.

  • <websitename> é o nome do site a ser testado.Digite esta sequência de caracteres exatamente da maneira como o nome do site da Web aparece no Solution Explorer.

Para obter um exemplo do uso do pathToWebApp parâmetro, consulte Método de teste de exemplo.

configuração o valor de % PathToWebRoot %

The %PathToWebRoot% variável adquire a seu valor de formas diferentes em diferentes ambientes. Estes são sistema autônomo dois casos:

  • Definir % PathToWebRoot % no Team Foundation compilação

  • Configuração % PathToWebRoot % em outros ambientes compartilhados

Definir % PathToWebRoot % no Team Foundation compilação

Quando ele é usado em Team Foundation Build, o valor da %PathToWebRoot% variável é derivado das informações no tipo de compilação e é conjunto por Team Foundation Build automaticamente.

Por exemplo, quando você executar testes na versão de 'Versão' do 'WebSite1' criada para x86 plataforma, o valor de PathToWeb é conjunto para:

<build directory>/binaries/x86/Release/_precompiled/WebSite1

Configuração % PathToWebRoot % em outros ambientes compartilhados

Em todos sistema autônomo casos diferentes de quando ele é usado no Team Foundation Build, o valor da %PathToWebRoot% variável é definida da seguinte maneira. Quando o teste é executado, o sistema irá procurar o valor do %PathToWebRoot% variável em um ou mais dos seguintes locais:

  • O localização padrão para novos projetos de site da Web.Por padrão, o sistema usa o caminho para o local em que Visual Studio cria novos projetos de site da Web. O valor padrão é <drive>:\Documents and Settings\<user name>\My Documents\Visual Studio 2005\WebSites\.

  • A variável de ambiente PathToWebRoot.Se você tiver definido essa variável de ambiente no computador onde os testes são executados, seu valor é utilizado e substitui qualquer valor a partir do local padrão para novos projetos de site da Web.

  • O valor do diretório raiz do aplicativo da Web.Para definir esse valor, clique em Tools e então clique Options, expanda Test Tools, e clique em Test Execution.Se você tiver definido esse valor, ele substitui quaisquer valores da variável de ambiente PathToWebRoot e o local padrão para novos projetos de site da Web.

Exemplo de Método de Teste

O método de teste a seguir, que testa um serviço da Web, é marcado com o atributo AspNetDevelopmentServer.O atributo AspNetDevelopmentServer requer o pathToWebApp parâmetro. O uso do %PathToWebRoot% variável na pathToWebApp parâmetro é indicado em negrito no exemplo a seguir.

using Microsoft.VisualStudio.TestTools.UnitTesting;
using Microsoft.VisualStudio.TestTools.UnitTesting.Web;
using TestProject1.localhost;

[TestMethod]
[AspNetDevelopmentServer("HelloWorldServer", "%PathToWebRoot%\\WebSite1")]

public void HelloWorldTest()
{
    HelloWorldService target = new HelloWorldService();

    WebServiceHelper.TryUrlRedirection(
                                       target, 
                                       TestContext,
                                       "HelloWorldServer"
                                       );

    string expected = "Hello World";
    string actual;

    actual = target.HelloWorld();

    Assert.AreEqual(
                    expected, 
                    actual,

"TestProject1.localhost.HelloWorldService.HelloWorld did not return the expected value."
                    );
}

Consulte também

Tarefas

Como: Criar um teste de unidade

Como: Parametrizar um servidor Web

Conceitos

Servidores Web no Visual Web Developer

Visão geral dos testes de unidade ASP.NET

Referência

Microsoft.VisualStudio.TestTools.UnitTesting.Web

AspNetDevelopmentServerAttribute

AspNetDevelopmentServerHostAttribute

Outros recursos

Testando serviços da Web

Como: Gerar um teste de unidade