Teste aplicações orientadas por modelos com o Motor de Teste (obsoleto)

Observação

O Test Engine está obsoleto e será removido numa versão futura. Use os exemplos do Power Platform Playwright para capacidades de automação de testes no Power Platform e nos serviços Dynamics 365.

Testar seu aplicativo controlado por modelo com o Test Engine requer as seguintes etapas:

  1. Criar um plano de teste
  2. Configurar o utilizador
  3. Executar o teste
  4. Ver os resultados

Criar um plano de teste

Crie um ficheiro YAML usando o schema do plano de teste explicado no formato YAML do Power Apps Test Engine (obsoleto).

Tip

Analise os planos de exemplo disponíveis no repositório GitHub.

Ativar pré-visualização

Atualmente, todos os recursos de teste de extensão de aplicativo orientados por modelo exigem o uso de funções de visualização. Para habilitá-los, adicione Preview à lista allowPowerFxNamespaces em extensionModules de seu testSettings.

Este exemplo mostra como adicionar isso:

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview

Configurar o seu utilizador

O Test Engine atualmente tem estes métodos de autenticação:

Método Description
Estado de armazenamento Armazene o estado autenticado do utilizador localmente no perfil de utilizador usando a Microsoft Windows API de Proteção de Dados
Dataverse Armazene o estado do utilizador autenticado dentro do Dataverse usando a tua própria chave gerida pelo cliente criptografada com um certificado X.509 usando ASP.NET Core Data Protection

Não é possível armazenar credenciais de teste em arquivos de plano de teste. Você deve selecionar Storagestate ou Dataverse como o local seguro para armazenar credenciais. O arquivo de plano de teste contém referências a quais variáveis de ambiente são usadas para a persona do utilizador. Por exemplo, o seguinte trecho de YAML indica que as variáveis de user1Email ambiente são usadas:

environmentVariables:
  users:
    - personaName: User1
      emailKey: user1Email

Veja Usuários para obter mais informações.

Use o seguinte script do PowerShell para armazenar o nome de utilizador em suas variáveis de ambiente.

$env:user1Email = "someone@example.com"

Executar o teste

Use o comando PAC CLI test run para executar seu plano de teste.

Parâmetros Obrigatórios

Você precisa fornecer as seguintes informações:

  • --test-plan-file: Caminho para o ficheiro de plano de teste
  • --tenant: O seu ID de inquilino
  • --environment-id: Seu ID de ambiente
  • --domain: URL de domínio da página do aplicativo controlado por modelo a ser testada

Formatos de URL para aplicativos controlados por modelo

Para aplicativos controlados por modelo, o --domain parâmetro varia de acordo com o tipo de página que você está a testar. O formato de URL deve especificar o correto pagetype com base no cenário de teste:

# For custom pages
pac test run `
   --provider mda `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value `
   --domain "https://contoso.crm.dynamics.com/main.aspx?appid=00001111-aaaa-2222-bbbb-3333cccc4444&pagetype=custom&name=dev_home_c8017"

# For entity lists (views)
pac test run `
   --provider mda `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value `
   --domain "https://contoso.crm.dynamics.com/main.aspx?appid=00001111-aaaa-2222-bbbb-3333cccc4444&pagetype=entitylist&etn=account&viewid=5a84c584-df1c-ed11-9db0-000d3a991110"

# For entity records (forms)
pac test run `
   --provider mda `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value `
   --domain "https://contoso.crm.dynamics.com/main.aspx?appid=00001111-aaaa-2222-bbbb-3333cccc4444&pagetype=entityrecord&etn=account&id=72e0e163-df1c-ed11-9db0-000d3a991110"

Integração do Dataverse

Para habilitar Dataverse a integração com seus testes de aplicativo orientados por modelo, adicione o enableDataverseFunctions parâmetro em seu testSettings:

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview
    parameters:
      enableDataverseFunctions: true

Quando ativas a integração com Dataverse, és obrigado a abrir CLI do Azure com um utilizador ou principal de serviço que tenha direitos sobre o ambiente Dataverse. Pode usar o comando: az login Mais informações: Iniciar sessão com CLI do Azure.

O URL da API do Dataverse usado para integração é obtido do nome de domínio do host do parâmetro pac test run--domain ou ao definir uma variável de ambiente do PowerShell com o nomeDATAVERSE_URL.

Ver os resultados

Quando os testes forem concluídos, você poderá exibir os resultados do teste no .trx arquivo localizado no diretório de saída. Esta pasta contém quaisquer capturas de tela ou vídeos capturados pelos seus testes quando o recordVideo estiver definido como true no yaml do plano de teste.