Como: Configurar seu aplicativo do Silverlight para teste

Você pode usar testes codificados da interface do usuário para criar testes automatizados para aplicativos do Silverlight 4 usando Visual Studio 2010 Ultimate ou Visual Studio 2010 Premium. Você também pode criar gravações de ação para os testes manuais para aplicativos do Silverlight 4 usando Microsoft Test Manager.

Observação importanteImportante

Há suporte para o Silverlight 4 somente os aplicativos são hospedados em uma janela do Internet Explorer. Não há suporte para aplicativos do Silverlight 4 que são hospedados usando um navegador diferente ou não são hospedados em um navegador.

Para configurar seu aplicativo do Silverlight para poder criar testes codificados da interface do usuário ou gravações de ação para ele, você deve executar as seguintes tarefas principais:

  1. Adicione Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll como uma referência para cada projeto do Silverlight 4 na sua solução para que os controles do Silverlight podem ser identificados.

  2. Verifica se cada controle do Silverlight tem uma propriedade de identificação exclusiva.

    ObservaçãoObservação

    Para definir essa propriedade para controles diferentes, consulte Definir uma propriedade de automação exclusiva para controles do Silverlight para teste.

  3. Construir o aplicativo e implantá-lo.

Aviso

O SilverlightUIAutomationHelper.dll não pode ser redistribuído como parte do seu aplicativo. Quando você adiciona essa DLL para seu projeto do Silverlight, você deve adicionar a ele para que condicionalmente, você pode compilar o aplicativo com ou sem essa DLL, conforme mostrado no procedimento a seguir. Você pode criar uma compilação com a DLL que será usada somente para teste. Dessa maneira, você irá não redistribuir a DLL.

Controles com suporte

Os seguintes controles têm suporte para gravações de ação e codificado de testes de interface do usuário:

  • Os controles padrão que são fornecidos como parte das ferramentas Microsoft Silverlight 4 para Visual Studio 2010 são suportadas.

  • Controles personalizados derivados de controles padrão nas ferramentas do Microsoft Silverlight 4 são suportados.

  • Controles personalizados que herdam de System.Windows.Controls.Control. Dependendo de como você pode personalizar esses controles, pode haver suporte limitado para algumas ações. Além disso, talvez não seja possível obter os valores de algumas propriedades de validações.

Controles sem suporte

Os seguintes controles não são suportados para gravações de ação e codificado de testes de interface do usuário:

  • Controles personalizados que não são derivados dos controles fornecidos como parte das ferramentas Microsoft Silverlight 4 para Visual Studio 2010.

  • Controles de terceiros talvez não tenham suporte, dependendo de como esses controles foram criados.

Aviso

Você pode criar um plugin personalizado para oferecer suporte aos testes de um controle personalizado. Para obter um exemplo sobre como criar um plugue personalizado no, consulte Estendendo testes codificados da interface do usuário e a gravações de ação para o suporte ao Microsoft Excel.

Use os procedimentos a seguir para adicionar ou remover o SilverlightUIAutomationHelper.dll:

  • Adicionar o SilverlightUIAutomationHelper.dll a um projeto do Silverlight 4

  • Remover o SilverlightUIAutomationHelper.dll de um projeto de 4 do Silverlight

Para definir uma propriedade de identificação exclusiva para cada controle do Silverlight, consulte o tópico a seguir: Definir uma propriedade de automação exclusiva para controles do Silverlight para teste.

Para adicionar o SilverlightUIAutomationHelper.dll a um projeto do Silverlight 4

  1. Para abrir a solução de qualquer um dos seus projetos do Silverlight, clique em arquivo e aponte para Abrir. Clique em Project/Solution.

    A caixa de diálogo Open Project é exibida.

  2. Selecione sua solução e, em seguida, clique em Abrir.

  3. Para cada projeto do Silverlight em sua solução que você deseja testar, você deve adicionar o SilverlightUIAutomationHelper.dll. Para adicionar isso, clique com o botão direito no projeto e, em seguida, clique em Unload Project

  4. Clique com o botão direito no projeto que é descarregado e então clique em Editar < project name >.

    Você verá nós de PropertyGroup seguidos ItemGroup nós.

  5. Para definir a condição de produção usar condicionalmente, adicionar o SilverlightUIAutomationHelper.dll, você deve fazer duas modificações a seguintes:

    1. Para definir a condição de produção, adicione a seguinte entrada para a primeira <PropertyGroup> nó:

      <Production Condition="'$(Production)'==''">False</Production>
      
    2. Para adicionar a DLL quando a compilação não é uma compilação de produção, inserir o seguinte nó escolher depois PropertyGroup nós, mas antes nós ItemGroup:

      <Choose>
         <When Condition=" '$(Production)'=='False' ">
               <ItemGroup>
                 <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper">
                 </Reference>
               </ItemGroup>
             </When>
        </Choose>
      
  6. Para salvar o arquivo, clique em Salvar.

  7. Para recarregar a essas alterações, clique com o botão direito do projeto e clique em Reload Project

    Aviso

    Se você tiver vários projetos do Silverlight que você deseja testar, você deve seguir estas etapas para cada projeto.

Para remover o SilverlightUIAutomationHelper.dll de um projeto do Silverlight 4

  • Para remover o SilverlightUIAutomationHelper.dll para que ele não é redistribuído com o seu código de produção, defina o valor de condição de produção como true na primeira <PropertyGroup> nó:

    <Production Condition="'$(Production)'==''">True</Production>
    

    Dessa maneira, a DLL não é adicionada como referência pelo nó escolha que você adicionou ao projeto no procedimento anterior.

    ObservaçãoObservação

    Você também pode definir uma variável de ambiente denominada Production o valor True. Em seguida, você pode usar msbuild para construir o projeto do Silverlight e remover o SilverlightUIAutomationHelper.dll.

Consulte também

Conceitos

Teste de Interface do usuário com testes automatizados de UI

Outros recursos

Teste de aplicativos do Silverlight com testes codificados da interface do usuário ou gravações de ação

Definir uma propriedade de automação exclusiva para controles do Silverlight para teste