Executar testes automatizados do plano de teste

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Automatize casos de teste em seus planos de teste e execute-os diretamente do Azure Test Plans . Os testes automatizados oferecem os seguintes benefícios:

  • Um processo fácil de usar para testadores que podem não ser bem versados na execução de testes em fluxos de trabalho de compilação ou versão.
  • A flexibilidade para executar testes selecionados sob demanda, em vez de testes agendados em fluxos de trabalho de Build ou Versão em que todos os testes que atendem aos critérios de filtro são executados.
  • A capacidade de executar novamente alguns testes que falharam devido a problemas de infraestrutura de teste ou você tem um novo build que inclui correções para testes com falha.

Pré-requisitos

  • Você precisa se conectar a um projeto. Se ainda não tiver um projeto, crie um.
  • Você deve ser adicionado a um projeto. Para ser adicionado, adicione usuários a um projeto ou equipe.
  • Para exibir ou executar testes manuais ou automatizados, você deve ter acesso Básico ou superior.

Para saber mais, confira Acesso e permissões de teste manual.

Configurar seu ambiente

  1. Na página Planos de Teste, escolha seu plano de teste, abra o menu de atalho e selecione Configurações do plano de teste.

    A captura de tela mostra a escolha das configurações do plano de teste.

  2. Na caixa de diálogo Configurações do plano de teste, selecione o pipeline de compilação que gera compilações que contêm os binários de teste. Em seguida, você pode selecionar um número de build específico para testar ou permitir que o sistema use automaticamente o build mais recente quando os testes forem executados.

    A captura de tela mostra a seleção do número de compilação e compilação.

  3. Você precisa de um pipeline de versão que foi criado a partir do modelo Executar testes automatizados do Test Manager para executar testes de planos de teste nos Planos de Teste do Azure. Se você tiver um pipeline de versão existente criado usando esse modelo, selecione-o e selecione o estágio existente no pipeline de versão para a execução de teste. Caso contrário, selecione Criar novo na caixa de diálogo para criar um novo pipeline de versão que contenha um único estágio com a tarefa de teste do Visual Studio já adicionada.

    A captura de tela mostra a seleção de um pipeline de lançamento ou a criação de um novo.

    Como fazer passar parâmetros para meu código de teste de um pipeline de build ou lançamento?

  4. Atribua nomes significativos ao pipeline de lançamento e ao estágio conforme necessário.

  5. Se o Visual Studio já estiver instalado no computador agente, ignore esta etapa. Caso contrário, adicione a tarefa Visual Studio Test Platform Installer à definição de pipeline.

  6. Adicione a tarefa Teste do Visual Studio ao pipeline de lançamento e configure-a da seguinte maneira:

    • Verifique se a versão 2 da tarefa Teste do Visual Studio está selecionada. O número da versão é mostrado na lista suspensa do painel de configurações da tarefa.

      A captura de tela mostra a verificação da configuração do número da versão da tarefa.

    • Verifique se Selecionar testes usando está definido como Execução de teste. O que essa configuração significa?

      A captura de tela mostra a verificação da configuração do método de seleção de teste.

    • Para a configuração Testar versão da plataforma , selecione Instalado pelo Instalador de Ferramentas.

      A captura de tela mostra a configuração da opção do instalador.

    • Se você tiver testes de interface do usuário executados em navegadores físicos ou clientes espessos, verifique se o agente está definido para ser executado como um processo interativo com logon automático habilitado. Você deve configurar um agente para ser executado interativamente antes de enfileirar a compilação ou a versão. A caixa de seleção Combinação de testes contém testes de interface do usuário não configura o agente no modo interativo automaticamente - usada apenas como um lembrete para configurar o agente adequadamente para evitar falhas.

    • Se você estiver executando testes de interface do usuário em um navegador sem cabeça, a configuração do processo interativo não será necessária.

    • Selecione como a plataforma de teste é provisionada e a versão do Visual Studio ou o local da plataforma de teste instalada nas máquinas de teste.

    • Se os testes precisarem de parâmetros de entrada , como URLs de aplicativo ou cadeias de conexão de banco de dados, selecione o arquivo de configurações relevante nos artefatos de build. Você pode usar as tarefas Publicar artefatos de compilação em seu pipeline de compilação para publicar o arquivo de configurações em um local de descarte se esse arquivo não estiver incluído nos artefatos. No exemplo a seguir, a URL do aplicativo é exposta no arquivo de configurações de execução e é substituída para defini-la como uma URL de preparo usando a configuração Substituir parâmetros de execução de teste.

      A captura de tela mostra a especificação das propriedades para a tarefa de teste do Visual Studio.

      Para obter informações sobre as configurações de opção da tarefa Teste do Visual Studio, consulte Tarefa de teste do Visual Studio.

  7. Escolha o item de trabalho do Agent e verifique se a fila de implantação está definida como aquela que contém os computadores em que você deseja executar os testes. Se os testes exigirem máquinas especiais do pool de agentes, você poderá adicionar demandas selecionadas em tempo de execução.

    A captura de tela mostra a especificação das propriedades do trabalho do Agente.

    Você pode minimizar os tempos de teste distribuindo testes entre vários agentes definindo Paralelismo como Várias execuções e especificando o número de agentes.

    Observação

    Se você estiver executando testes de interface do usuário, como CodeUI ou Selenium, em navegadores físicos, como IE, Firefox ou Chrome, o agente nas máquinas deverá estar sendo executado no modo interativo e não como um serviço. Mais detalhes.

  8. Na página Pipeline do pipeline de versão, verifique se o pipeline de compilação que contém os binários de teste está vinculado a esse pipeline de versão como uma fonte de artefato.

    A captura de tela mostra a verificação dos artefatos de compilação vinculados.

  9. Salve o pipeline de lançamento.

  10. Se você escolher Criar novo na caixa de diálogo Configurações do plano de teste na etapa 2 deste exemplo, retorne à página do navegador que contém as configurações do plano de teste. Na caixa de diálogo Configurações do plano de teste, selecione o pipeline de lançamento e o estágio que você salvou.

    A captura de tela mostra a seleção do pipeline e do estágio de lançamento.

Executar os testes automatizados

  1. No portal da Web do Test Plans, abra o plano de teste e selecione um conjunto de testes que contém os testes automatizados.

  2. Selecione o(s) teste(s) que deseja executar, abra o menu Executar e selecione Executar teste.

    A captura de tela mostra a seleção Executar teste.

    Os binários de teste para esses testes devem estar disponíveis nos artefatos de build gerados pelo pipeline de build.

  3. Selecione OK para iniciar o processo de teste. O sistema verifica se apenas os testes automatizados são selecionados (quaisquer testes manuais são ignorados), valida o estágio para garantir que a tarefa de teste do Visual Studio esteja presente e tenha configurações válidas, verifica a permissão do usuário para criar uma versão para o pipeline de versão selecionado, cria uma execução de teste e, em seguida, dispara a criação de uma versão para o estágio selecionado.

    A captura de tela mostra o início da execução do teste.

  4. Selecione Exibir execução de teste para exibir o progresso do teste e analisar os testes com falha. Os resultados do teste têm as informações relevantes para depuração de testes com falha, como a mensagem de erro, rastreamento de pilha, logs de console e anexos.

  5. Após a conclusão da execução do teste, a página Execuções do Azure Test Plans mostra os resultados do teste. A página Resumo da execução mostra uma visão geral da execução.

    A captura de tela mostra o resumo da execução do teste.

    Há um link para o Release usado para executar os testes, o que facilita encontrar a versão que executou os testes, se você precisar voltar mais tarde e analisar os resultados. Use também este link se quiser abrir a versão para exibir os logs de versão.

Observação

Não há suporte para anexação manual de arquivos para resultados de testes automatizados.

Quais são os cenários de erro ou problemas típicos que devo procurar se meus testes não forem executados?

  1. A página Resultados do teste lista os resultados de cada teste na execução do teste. Selecione um teste para ver informações de depuração para testes com falha, como a mensagem de erro, rastreamento de pilha, logs de console e anexos.

    A captura de tela mostra a exibição dos detalhes dos resultados do teste.

  2. Abra a página Test Plans e selecione o plano de teste para ver a status de seus testes se os testes forem atualizados após a conclusão da execução do teste. Selecione um teste para ver os resultados recentes do teste.

    A captura de tela mostra a exibição do plano de teste.

Perguntas frequentes

Consulte as seguintes perguntas frequentes (FAQs) sobre os Planos de Teste do Azure.

P: Quais permissões preciso para executar testes automatizados de Azure Test Plans?

R: Você deve ser um Colaborador do Projeto ou ter as seguintes permissões:

  • Criar versões
  • Gerenciar versões
  • Editar estágio de lançamento
  • Gerenciar Implantação

Para obter mais informações, consulte Definir permissões para pipelines de lançamento e Permissões de versão.

P: Posso substituir o build ou o estágio definido no nível do plano de teste para uma instância específica da execução de teste?

Um: Sim, você pode fazer isso usando o comando Executar com opções . Abra o menu de atalho do conjunto de testes na coluna esquerda e selecione Executar com opções.

A captura de tela mostra a configuração da caixa de diálogo Executar com opções.

Insira os seguintes valores na caixa de diálogo Executar com opções e selecione OK:

  • Tipo de teste e executor: selecione Testes automatizados usando o Estágio de Versão.
  • Build: selecione o build que tem os binários de teste. Os resultados do teste estão associados a esta compilação.
  • Pipeline de Lançamento: selecione um pipeline na lista de pipelines de lançamento que podem consumir o artefato de build selecionado.
  • Estágio de Lançamento: selecione o nome do estágio configurado no pipeline de lançamento.

A captura de tela mostra a caixa de diálogo Executar com opções configurada.

P: Por que usar estágios de versão para executar testes?

Um: O Azure Pipelines oferece um fluxo de trabalho de orquestração atraente para obter binários de teste como artefatos e executar testes. Esse fluxo de trabalho compartilha os mesmos conceitos usados no fluxo de trabalho de teste agendado, o que significa que os usuários que executam testes no fluxo de trabalho agendado acham fácil se adaptar; por exemplo, clonando um pipeline de lançamento de teste agendado existente.

Outro grande benefício é a disponibilidade de um conjunto avançado de tarefas no catálogo de tarefas que permitem que uma variedade de atividades seja executada antes e depois de executar testes. Exemplos incluem preparar e limpar dados de teste, criar e limpar arquivos de configuração e muito mais.

P: Como funciona a seleção de "Execução de teste" na tarefa teste do Visual Studio versão 2?

R: O subsistema de gerenciamento de teste usa o objeto de execução de teste para passar na lista de testes selecionados para execução. A tarefa de teste pesquisa o identificador de execução de teste, extrai as informações de execução de teste, como os nomes do contêiner e do método de teste, executa os testes, atualiza os resultados da execução do teste e define os pontos de teste associados aos resultados do teste na execução do teste. De uma perspectiva de auditoria, a tarefa do Visual Studio fornece um rastreamento das versões históricas e dos identificadores de execução de teste para os testes que foram enviados para execução de teste sob demanda.

P: O agente deve ser executado no modo interativo ou como um serviço?

R: Se você executar testes de interface do usuário, como testes codificados de interface do usuário ou Selenium , o agente nas máquinas de teste deverá estar sendo executado no modo interativo com logon automático habilitado, não como um serviço, para permitir que o agente inicie um navegador da Web. Se você estiver usando um navegador sem cabeça, como o PhantomJS, o agente poderá ser executado como um serviço ou no modo interativo. Para obter mais informações, consulte Criar e liberar agentes, Implantar um agente no Windows e Pools de agentes.

P: Onde posso encontrar uma documentação detalhada sobre como executar testes do Selenium?

Um: Confira Introdução ao teste do Selenium.

P: O que acontece se eu selecionar várias configurações para o mesmo teste?

R: Atualmente, o fluxo de trabalho sob demanda não reconhece a configuração.

P: E se eu precisar baixar binários de produtos e testar binários de diferentes builds? Ou se eu precisar obter artefatos de uma fonte como Jenkins?

Um: A funcionalidade atual é otimizada para que um único build de equipe seja testado sob demanda usando um fluxo de trabalho do Azure Pipelines. Avaliamos o suporte para versões de vários artefatos, incluindo artefatos que não sejam do Azure Pipelines, como o Jenkins, com base nos comentários dos usuários.

P: Eu já tenho um pipeline de lançamento de teste agendado. Posso reutilizar o mesmo pipeline para executar o teste sob demanda ou devo criar um novo pipeline?

Um: Recomendamos que você use um pipeline de lançamento separado e um estágio para testes automatizados sob demanda de Azure Test Plans porque:

  • Talvez você não queira implantar o aplicativo toda vez que quiser executar alguns testes sob demanda. Os estágios de teste agendados normalmente são configurados para implantar o produto e, em seguida, executar testes.

  • Novas versões são disparadas para cada execução sob demanda. Se você tiver muitos testadores que executam algumas execuções de teste sob demanda todos os dias, seu pipeline de lançamento de teste agendado pode estar sobrecarregado com versões para essas execuções, dificultando a localização de versões que disparam para o pipeline que contém testes agendados e implantação em produção.

  • Talvez você queira configurar a tarefa de teste do Visual Studio com um identificador de execução de teste como uma entrada para que você possa rastrear o que disparou a versão. Para obter mais informações, consulte Como funciona a seleção de "Execução de teste (para execuções sob demanda)" na tarefa de teste do Visual Studio?.

P: Posso disparar essas execuções e exibir os resultados no Microsoft Test Manager?

R: Não. Microsoft Test Manager não oferece suporte à execução de testes automatizados em compilações do Team Foundation. Ele só funciona na interface baseada na Web para o Azure Pipelines. Todos os novos investimentos em desenvolvimento de produtos de testes manuais e automatizados estão na interface baseada na web. Nenhum desenvolvimento adicional está planejado para o Microsoft Test Manager. Consulte Diretrizes sobre o uso do Microsoft Test Manager.

P: Tenho vários testadores na minha equipe. Eles podem executar testes de diferentes conjuntos de testes ou planos de teste em paralelo usando o mesmo pipeline de lançamento?

Um: Eles podem usar o mesmo pipeline de lançamento para disparar várias execuções de teste em paralelo se:

  • O pool de agentes associado ao estágio tem agentes suficientes para atender a solicitações paralelas. Se agentes suficientes não estiverem disponíveis, as execuções ainda poderão ser acionadas, mas liberarão a fila para processamento até que os agentes fiquem disponíveis.

  • Você tem trabalhos suficientes para habilitar trabalhos paralelos. Para obter mais informações, consulte Trabalhos paralelos no Azure Pipelines ou Trabalhos paralelos no TFS.

  • Os testadores não executam os mesmos testes em paralelo. Isso pode fazer com que os resultados sejam substituídos, dependendo da ordem de execução.

Para habilitar várias execuções de teste diferentes a serem executadas em paralelo, defina a opção de gatilho de estágio do Azure Pipelines para comportamento quando várias versões estiverem aguardando para serem implantadas da seguinte maneira:

  • Se o aplicativo der suporte a testes em execução em paralelo de fontes diferentes, defina essa opção como Permitir que várias versões sejam implantadas ao mesmo tempo.

  • Se seu aplicativo não oferecer suporte a testes executados em paralelo de diferentes fontes, defina essa opção como Permitir apenas uma implantação ativa por vez.

P: Como fazer passar parâmetros para meu código de teste de um pipeline de build ou lançamento?

R: Use um arquivo runsettings para passar valores como parâmetros para seu código de teste. Por exemplo, em uma versão que contém vários estágios, você pode passar a URL do aplicativo apropriada para cada uma das tarefas de teste em cada uma delas. O arquivo runsettings e os parâmetros correspondentes devem ser especificados na tarefa Teste do Visual Studio.

A captura de tela mostra a passagem de parâmetros para testar o código de um pipeline de compilação ou versão.

P: Quais são os cenários ou problemas de erro típicos que devo procurar se meus testes não forem executados?

Um: Verifique e resolve problemas da seguinte maneira:

  • O pipeline de lançamento e o estágio no qual desejo executar testes não são mostrados depois que seleciono a compilação.

    • Verifique se o pipeline de build que está gerando o build está vinculado como o artefato primário na guia Artefatos do pipeline de lançamento.

  • Recebo um erro de que não tenho permissão suficiente para disparar uma versão.

    • Configure As permissões Criar versões e Gerenciar implantações para o usuário no menu Segurança do pipeline de lançamento. Confira Permissões de versão.

  • Recebo um erro de que nenhum teste automatizado foi encontrado.

    • Verifique o status de automação dos testes selecionados. Faça isso no item de trabalho do caso de teste ou use o link Opções de coluna em Planos de teste do Azure para adicionar a coluna Status de automação à lista de testes. Para obter mais informações, consulte a seção de pré-requisitos.
  • Meus testes não foram executados e suspeito que o pipeline de lançamento esteja incorreto.

    • Use o link na página Executar resumo para acessar a instância de versão usada para executar os testes e exibir os logs de versão.

  • Meus testes entram no estado de erro ou permanecem "em andamento" mesmo após a liberação para o estágio ser disparada.

    • Verifique se o estágio de lançamento selecionado tem a tarefa e a versão corretas selecionadas. Você deve usar a versão 2 ou superior da tarefa teste do Visual Studio . Não há suporte para a versão 1 da tarefa e a tarefa Executar Testes Funcionais .