Compartilhar via


Práticas recomendadas para testes de IU codificados

Este tópico descreve as práticas recomendadas e quando desenvolve teste codificados da interface do usuário.

Requisitos

  • Visual Studio Ultimate, Visual Studio Premium

Práticas recomendadas

Use as seguintes diretrizes para criar um teste codificado flexível de interface do usuário.

  • Use Construtor de Teste de IU Codificado sempre que possível.

  • Não modifique o arquivo de UIMap.designer.cs diretamente.Se você fizer isso, as alterações no arquivo serão substituídas.

  • Crie seu teste como uma sequência de métodos gravados.Para obter mais informações sobre como registrar um método, consulte Criando teste codificados da interface do usuário.

  • Cada método registrado deverá atuar em uma única página, formulário, ou a caixa de diálogo.Crie um novo método de teste para cada nova página, formulário, ou a caixa de diálogo.

  • Quando você cria um método, use um nome significativo do método em vez do nome padrão.Ajuda significativos de um nome identificam a finalidade do método.

  • Quando possível, limite cada método registrado a menos que 10 ações.Essa abordagem modular facilita substituir um método se interface do usuário é alterado.

  • Crie cada asserção usando Construtor de Teste de IU Codificado, o que adiciona automaticamente um método da asserção no arquivo de UIMap.Designer.cs .

  • Se as alterações de (UI) da interface do usuário, logs novamente os métodos de teste, ou os métodos da asserção, ou logs novamente as seções afetadas de um método de teste existente.

  • Crie um arquivo separado de UIMap para cada módulo em seu aplicativo no teste.Para obter mais informações, consulte Testando um aplicativo grande com vários mapas de interface do usuário.

  • No aplicativo no teste, use nomes significativos quando você cria os controles de interface do usuário.Isso fornece mais significado e usabilidade para nomes gerados automaticamente do controle.

  • Se você estiver criando asserções codificando com a API, crie um método para cada asserção na parte da classe de UIMap que está no arquivo de UIMap.cs .Chamar este método de seu método de teste para executar a asserção.

  • Se você estiver diretamente com codificação API, use as propriedades e os métodos nas classes geradas no arquivo de UIMap.Designer.cs em seu código tanto quanto você pode.Essas classes farão seu trabalho mais fácil, mais confiável, e o ajudarão a ser mais produtivo.

Os testes codificados da interface do usuário adaptam-se automaticamente a muitas alterações na interface do usuário.Se, por exemplo, um elemento de interface do usuário modificou a posição ou a cor, na maioria das vezes no teste codificado de interface do usuário ainda encontrará o elemento correto.

Durante a execução do teste, os controles da interface do usuário estão localizados pela estrutura de teste usando um conjunto de propriedades de pesquisa que são aplicadas a cada classe do controle das definições criadas por Construtor de Teste de IU Codificado no arquivo de UIMap.Designer.cs .As propriedades de pesquisa contém pares de nome/valor de nomes de propriedade e valores de propriedade que podem ser usados para identificar o controle, como FriendlyName, Name, e as propriedades de ControlType do controle.Se as propriedades de pesquisa estão inalterados, o teste codificado de interface do usuário apresentados com êxito o controle na interface do usuário.Se as propriedades de pesquisa é alterada, os testes codificados da interface do usuário têm um algoritmo inteligente de correspondência que se aplica a heurística para localizar controles e o windows na interface do usuário.Quando interface de usuário for alterado, você poderá modificar as propriedades de pesquisa dos elementos identificados anteriormente para garantir que estão localizadas.

O que fazer se sua interface de usuário for alterada

Interfaces do usuário alteração com frequência durante o desenvolvimento.Aqui estão algumas maneiras de reduzir o efeito dessas alterações:

  • Localize o método registrado que referencia esse controle e use Construtor de Teste de IU Codificado para registrar novamente as ações para este método.Você pode usar o mesmo nome do método que substitui as ações existentes.

  • Se um controle que tem uma asserção que não seja mais válido:

    • Excluir o método que contém a asserção.

    • Remover a chamada ao método do método de teste.

    • Adicione uma nova asserção arrastando o botão de vários cabelo no controle de interface do usuário, abra o mapa da interface do usuário, e adicionar a nova asserção.

Para obter mais informações sobre como registrar teste codificados da interface do usuário, consulte Verificando código pela Automação da Interface do Usuário.

O que fazer se um processo em segundo plano precisa ser concluída antes que o teste pode continuar

Você pode ter que esperar até que um processo termine antes de continuar com a ação seguir da interface do usuário.Para fazer isso você pode usar WaitForReadyLevel para esperar antes que o teste continue como no exemplo a seguir.

// Set the playback to wait for all threads to finish
Playback.PlaybackSettings.WaitForReadyLevel = WaitForReadyLevel.AllThreads;

// Press the submit button
this.UIMap.ClickSubmit();

// Reset the playback to wait only for the UI thread to finish
Playback.PlaybackSettings.WaitForReadyLevel = WaitForReadyLevel.UIThreadOnly;

Consulte também

Referência

UIMap

Microsoft.VisualStudio.TestTools.UITesting

Conceitos

Verificando código pela Automação da Interface do Usuário

Testando um aplicativo grande com vários mapas de interface do usuário

Configurações e plataformas compatíveis para testes de IU codificados e gravações de ações

Outros recursos

Criando teste codificados da interface do usuário