Automatizar os testes com Pipelines do Azure usando um editor clássico

Neste artigo, ficará a saber como configurar e executar os seus testes de aplicação de tela construídos no Test Studio, utilizando o editor clássico de Pipelines do Azure em Serviços Azure DevOps.

Pode utilizar um projecto público no GitHub - Microsoft/PowerAppsTestAutomation para:

  • Automatize as operações de iniciar sessão na sua aplicação.
  • Abra um browser no agente de construção e execute um conjunto de casos e conjuntos de teste.
  • Ver o estado da execução do teste no pipiline do Azure DevOps.

Pré-requisitos

Antes de poder avançar, tem de concluir os passos seguintes:

Passo 1 - Bifurcar o Microsoft/PowerAppsTestAutomation projeto no GitHub

Uma bifurcação é uma cópia de um repositório. Ao criar um repositório, pode fazer alterações sem afetar o projeto original.

  1. Iniciar sessão no GitHub.

  2. Vá ao repositório da microsoft/PowerAppsTestAutomation. Também pode procurar por microsoft/PowerAppsTestAutomation, e depois selecionar o repositório:

    Procurar GitHub.

  3. Selecionar Bifurcação:

    Selecionar Bifurcação.

  4. Selecione onde pretende aplicar a bifurcação:

    Selecionar conta de bifurcação.

O seu repositório com bifurcação estará agora disponível.

Passo 2- criar um ficheiro de teste URL .json

O ficheiro Test URL .json conterá o conjunto de teste e os URLs dos casos de teste para validar a sua aplicação. O conjunto de teste da aplicação e os URLs dos casos de teste podem ser recuperados selecionando a Ligação para reprodução no Test Studio.

Pode encontrar um ficheiro de amostra Samples/TestAutomationURLs.json no repositório que criou anteriormente.

  1. Crie um ficheiro novo TestURLs.json no seu repositório ou utilize qualquer outro nome de ficheiro.
    O nome e a localização do ficheiro serão mapeados nas variáveis do pipeline, mais tarde no documento.

  2. Copiar o formato do ficheiro Samples/TestAutomationURLs.json.

  3. Atualize a secção de URLs de teste com os testes que pretende validar na sua aplicação.

  4. Submeta as alterações ao seu repositório:

    JSON atualizado.

Criar um pipeline

  1. Iniciar sessão na instância do Azure DevOps.

  2. Selecione um projeto existente ou crie um projeto novo.

  3. Selecione Pipelines no menu à esquerda.

  4. Selecione Criar Pipeline.

    Pipeline criado.

  5. Selecione Utilize o editor clássico:

    Editor clássico.

  6. Selecione o GitHub como origem.

  7. Se necessário, autorize a sua ligação GitHub usando o OAuth ou um token de acesso pessoal:

    Pipeline no GitHub.

  8. Se necessário, editar o nome da ligação.

  9. Selecione as reticências ... no lado direito da entrada do Repositório.

  10. Insira o nome do seu projeto no GitHub, e depois e, em seguida, Selecione-o.

    Selecionar um repositório.

  11. Selecione Continuar.

  12. No ecrã Selecionar um modelo, selecione Tarefa vazia:

    Selecionar Tarefa vazia.

  13. Guarde o seu pipeline.

Adicionar tarefas ao pipeline

Agora vai adicionar novas tarefas e configurar as tarefas para executar os testes a partir do pipeline nesta sequência:

  1. Configure a resolução do ecrã utilizando o PowerShell.

  2. Restaurar os pacotes NuGet para a solução PowerAppsTestAutomation.

  3. Construa a solução PowerAppsTestAutomation.

  4. Adicione Testes do Visual Studio para o Google Chrome.

  5. Adicionar Testes do Visual Studio para Mozilla Firefox.

Passo 1 - Configure a resolução do ecrã utilizando o PowerShell

  1. Selecione + junto a Tarefa do agente 1.

  2. Procurar por PowerShell.

  3. Selecione Adicionar para adicionar uma tarefa PowerShell à tarefa:

    Adicionar o PowerShell.

  4. Selecione a tarefa.
    Também é possível atualizar o nome do visor para Definir a resolução do ecrã do agente para 1920 x 1080 ou similar.

  5. Selecione Inline como o tipo de script, e digite o seguinte na janela do script:

    # Set agent screen resolution to 1920x1080 to avoid sizing issues with Portal  
    Set-DisplayResolution -Width 1920 -Height 1080 -Force
    # Wait 10 seconds  
    Start-Sleep -s 10
    # Verify Screen Resolution is set to 1920x1080  
    Get-DisplayResolution
    

    Exemplo de script.

Passo 2 - Restaurar os pacotes NuGet

  1. Selecione + junto a Tarefa do agente 1.

  2. Procure NuGet.

  3. Selecione Adicionar para adicionar uma tarefa NuGet à tarefa.

  4. Selecione a tarefa.
    Também é possível atualizar o nome do visor para Restaurar pacotes NuGet ou similar.

  5. Selecione (reticências) no campo de configuração Caminho para a solução, packages.config ou project.json.

  6. Selecione o ficheiro da solução PowerAppsTestAutomation.sln.

  7. Selecione OK:

    NuGet pacote.

Passo 3 - Construa a solução PowerAppsTestAutomation

  1. Selecione + junto a Tarefa do agente 1.

  2. Procurar Compilação Visual Studio.

  3. Selecione Adicionar para adicionar uma tarefa de compilação Visual Studio à tarefa.

  4. Selecione a tarefa.
    Também é possível atualizar o nome do visor para Compilar a solução de automatização do teste do Power Apps ou similar.

  5. Selecione (reticências) no campo de configuração Solução.

  6. Selecione o ficheiro da solução PowerAppsTestAutomation.sln.

  7. Selecione OK.

Passo 4 - Adicione Testes do Visual Studio para o Google Chrome

  1. Selecione + junto a Tarefa do agente 1.

  2. Procurar Teste do Visual Studio.

  3. Selecione Adicionar para adicionar uma tarefa de Testar Visual Studio à tarefa.

  4. Selecione a tarefa.
    Também é possível atualizar o nome do visor para Executar Testes de automatização de teste do Power Apps através $(BrowserTypeChrome) ou similar.

  5. Remover as entradas predefinidas no campo de texto Ficheiros para Testar e adicione o seguinte:

    **\Microsoft.PowerApps.TestAutomation.Tests\bin\\Debug\Microsoft.PowerApps.TestAutomation.Tests.dll

  6. Introduzir TestCategory=PowerAppsTestAutomation no campo Testar critérios de filtro.

  7. Selecione A mistura de testes contém testes UI.

    A mistura de teste contém testes de UI.

  8. Selecione (reticências) no campo Ficheiro de definições.

  9. Expandir o Microsoft.PowerApps.TestAutomation.Tests, selecione o ficheiro patestautomation.runsettings e, em seguida, selecione OK:

    Executar definições.

  10. Copie o seguinte no campo Substituir os parâmetros de execução de teste.

    -OnlineUsername "$(OnlineUsername)" -OnlinePassword "$(OnlinePassword)" -BrowserType "$(BrowserTypeChrome)" -OnlineUrl "$(OnlineUrl)" -UsePrivateMode "$(UsePrivateMode)" -TestAutomationURLFilePath "$(TestAutomationURLFilePath)" -DriversPath "$(ChromeWebDriver)"
    

    Nota

    É aqui que as variáveis em pipeline são configuradas, representadas acima sob a forma de $(VariableName).

  11. Introduzir Executar Testes de automatização de teste do Power Apps através $(BrowserTypeChrome) ou similar no campo Título da execução do teste.

    Execução do teste.

Passo 5 - Adicionar Testes do Visual Studio para o Mozilla Firefox

  1. Clique com o botão direito do rato na tarefa Adicionar testes do Visual Studio para o Chrome e selecione Clonar tarefa(s).

  2. Selecione a tarefa e atualize as seguintes áreas:

    1. Título: Executar Testes de automatização de teste do Power Apps através $(BrowserTypeFirefox)

    2. Substituir os parâmetros de execução de teste

      -OnlineUsername "$(OnlineUsername)" -OnlinePassword "$(OnlinePassword)" -BrowserType "$(BrowserTypeFirefox)" -OnlineUrl "$(OnlineUrl)" -UsePrivateMode "$(UsePrivateMode)" -TestAutomationURLFilePath "$(TestAutomationURLFilePath)" -DriversPath "$(GeckoWebDriver)"
      
    3. Título de execução do teste: Executar Testes de automatização de teste do Power Apps através $(BrowserTypeFirefox)

Configurar variáveis do pipeline

Vai agora configurar as variáveis do pipeline definidas nas tarefas que acrescentou anteriormente.

  1. Selecione o separador Variáveis.

  2. Selecione Adicionar e repita este passo para configurar as seguintes variáveis:

Nome da variável Valor da variável
BrowserTypeChrome Chrome
BrowserTypeFirefox Firefox
OnlineUrl https://make.powerapps.com
TestAutomationURLFilePath $(Build.SourcesDirectory)\<test URL file>.json
Observação: Este é o ficheiro Test URLs .json que criou anteriormente.
UsePrivateMode true
OnlineUsername Introduza o endereço de e-mail do Microsoft Entra do contexto do utilizador que irá iniciar a sessão na aplicação. Os testes serão realizados no contexto desta conta de utilizador. Certifique-se de que este utilizador tem a capacidade de executar a aplicação e ligar-se a quaisquer origens de dados a que a aplicação se possa ligar.
  1. Selecione Adicionar e introduza OnlinePassword no nome da variável.

  2. Selecione a imagem bloquear para fazer desta variável um segredo.

    Tornar uma variável secreta.

  3. Guarde as configurações do seu pipeline.

Executar e analisar testes

Para validar se os seus testes estão a ser executados com sucesso, selecione Fila e, em seguida, selecione Executar. A sua tarefa vai começar a ser executada.

Executar tarefa.

À medida que a tarefa é executada, selecione a tarefa para ver um estado detalhado sobre cada uma das tarefas em curso:

Detalhes da tarefa.

Quando a tarefa estiver concluída, poderá visualizar o resumo de alto nível das tarefas e quaisquer erros ou avisos. Ao selecionar o separador Testes, pode ver detalhes específicos sobre os casos de teste que executou.

O exemplo seguinte indica que pelo menos um dos nossos casos de teste falhou durante a execução dos testes utilizando o browser do Chrome:

Chrome - falhou.

Selecione o teste RunTestAutomation para verificar os detalhes sobre o caso de teste que falhou. No separador Anexos, pode ver o resumo da execução do teste e quais os casos de teste que falharam ou passaram no seu conjunto de testes:

Separador Anexos.

Nota

Se executar um conjunto de testes, verá um resumo dos casos de teste que passaram e que falharam. Se executar um caso de teste, verá detalhes específicos sobre a falha com qualquer informação de rastreio, se disponível.

Limitações conhecidas

  • A autenticação Multifactor não é suportada.

  • O resumo dos testes irá relatar um único resultado por browser. O resultado do teste conterá um ou mais casos de teste ou resultados de conjuntos de teste.

  • Qualquer processo de autenticação, além do fluxo de início de sessão do Microsoft Entra requer a personalização do processo de início de sessão na solução PowerAppsTestAutomation.

Consulte também

Nota

Pode indicar-nos as suas preferências no que se refere ao idioma da documentação? Responda a um breve inquérito. (tenha em atenção que o inquérito está em inglês)

O inquérito irá demorar cerca de sete minutos. Não são recolhidos dados pessoais (declaração de privacidade).