Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Observação
Os recursos de versão preliminar não foram criados para uso em ambientes de produção e podem ter funcionalidade restrita. Esses recursos são disponibilizados antes de um lançamento oficial para que os clientes possam ter acesso antecipado e forneçam comentários.
Este guia fornece instruções passo a passo para configurar a autenticação no Test Engine. Para uma rápida visão geral das opções de autenticação, consulte Autenticação no mecanismo de teste.
Introdução à autenticação
O Test Engine oferece suporte a dois métodos de autenticação para testes baseados na web para aplicativos de tela e orientados a modelos:
- StorageState - Configuração padrão e fácil para desenvolvimento individual (para testes de aplicativos baseados em tela e modelos)
- Dataverse - Abordagem baseada em equipe para compartilhamento de usuários de teste e CI/CD (para testes de aplicativos baseados em tela e modelos)
A autenticação é tratada de forma diferente para o provedor PowerFx e testes diretos. Dataverse Esses testes obtêm tokens de acesso diretamente da sua sessão da CLI do Azure conectada usando comandos para obter tokens de acesso a recursos. az Certifique-se de estar logado com az login --allow-no-subscriptions antes de executar esses tipos de testes.
Configuração rápida: autenticação StorageState
A autenticação do StorageState é a maneira mais simples de começar. Ele usa a API de Proteção de Dados do Windows para armazenar com segurança tokens de autenticação em sua máquina local.
Etapa 1: execute seu teste com autenticação padrão
Execute o seguinte comando do PowerShell substituindo os parâmetros que começam com your.
pac test run `
--provider canvas `
--test-plan-file your-test-plan.yaml `
--tenant your-tenant-id `
--environment-id your-environment-id
Observação
O parâmetro execução do teste pac--user-auth não é usado neste exemplo porque o provedor padrão é StorageState. Você pode incluí-lo se desejar.
Etapa 2: Conclua o login interativo
Insira as credenciais da sua conta de usuário de teste
- Uma janela do navegador abre automaticamente
- Faça login com sua conta de usuário de teste
- Se solicitado, aprove os prompts de consentimento e MFA
- Selecione "Permanecer conectado" quando solicitado
Sua autenticação agora está sálvia.
- O Test Engine armazena sua autenticação com segurança
- Execuções de testes futuras usam o estado salvo sem exigir login
- Os tokens são atualizados automaticamente quando necessário
Configuração da equipe: autenticação Dataverse
Dataverse A autenticação é perfeita para equipes e pipelines de CI/CD. Ele armazena com segurança estados de usuários autenticados em Dataverse, criptografados com certificados X.509.
Etapa 1: Baixe e importe a solução do Test Engine
- Baixe a Power Platform solução em https://aka.ms/TestEngineAuth.
- Entre no Power Apps.
- Selecione seu ambiente de destino.
- Vá para Soluções e selecione Importar solução.
- Siga o assistente para carregar e instalar a solução do Test Engine.
Etapa 2: Criar um certificado para criptografia
Para um certificado autoassinado (somente desenvolvimento), execute o seguinte script do PowerShell:
$Params = @{
DnsName = @("testengine", "testengine")
CertStoreLocation = "Cert:\CurrentUser\My"
NotAfter = (Get-Date).AddMonths(6)
KeyAlgorithm = "RSA"
KeyLength = 2048
}
New-SelfSignedCertificate @Params
Para produção, use um certificado da autoridade de certificação da sua empresa.
Etapa 3: configure seu usuário de teste
Conclua as seguintes etapas para configurar seu usuário de teste:
Abra seu terminal e saia de qualquer sessão existente:
# Clear Power Platform CLI credentials pac auth clear # Clear Azure CLI credentials az logoutFaça login com o CLI do Azure (necessário para autenticação): Dataverse
az login --allow-no-subscriptionsDefina o nome do seu certificado como uma variável de ambiente do PowerShell chamada
DataProtectionCertificateName:$env:DataProtectionCertificateName = "CN=testengine"Execute seu teste com autenticação: Dataverse
pac test run ` --provider canvas ` --user-auth Dataverse ` --auth Certstore ` --test-plan-file testplan.yaml ` --tenant your-tenant-id ` --environment-id your-environment-idObservação
Ao contrário de StorageState, neste caso você deve usar o
--user-authparâmetro com valor deDataverse.Conclua o login interativo quando solicitado.
Configurando princípios de serviço (para CI/CD)
Para testes automatizados em pipelines de CI/CD, você pode usar entidades de serviço em vez de contas de usuário interativas.
Etapa 1: Crie um registro de aplicativo no ID Microsoft Entra
Conclua as etapas a seguir para criar um registro de aplicativo no Microsoft Entra ID.
- Faça login no centro de administração Microsoft Entra
- Navegue até Aplicativos>Registros de aplicativos
- Selecione Novo registro
- Digite um nome (por exemplo, "Automação do mecanismo de teste")
- Mantenha as opções padrão e selecione Registrar
- Após a criação, anote o ID do aplicativo (cliente) e o ID do diretório (locatário)
Etapa 2: Configurar permissões de API para Dataverse
Conclua as etapas a seguir para configurar as permissões da API para Dataverse.
- No registro do seu aplicativo, acesse Permissões de API
- Selecione Adicionar permissão
- Escolha APIs que minha organização usa
- Pesquise e selecione Dataverse
- Selecione Permissões delegadas
- Verifique user_impersonation
- Selecione Adicionar permissões
- Selecione Conceder consentimento do administrador
Etapa 3: Crie um segredo do cliente
Conclua as etapas a seguir para criar um segredo do cliente.
- Vá para Certificados e segredos
- Selecione Novo segredo do cliente
- Adicione uma descrição e escolha uma expiração
- Copie o valor secreto imediatamente (você não poderá vê-lo novamente)
Etapa 4: adicione o usuário do aplicativo a Dataverse
Conclua as etapas a seguir para adicionar o usuário do aplicativo a Dataverse.
- Abra o Centro de Administração Power Platform
- Selecione seu ambiente
- Acesse Configurações>Usuários + permissões>Usuários do aplicativo
- Selecione + Novo usuário do aplicativo
- Pesquise e selecione sua aplicação
- Atribuir funções de unidade de negócios e segurança apropriadas (incluindo a função "Usuário do mecanismo de teste")
- Salvar as alterações
Etapa 5: configurar seu pipeline de CI/CD
Adicione estas variáveis ao seu pipeline:
AZURE_CLIENT_ID: (your application ID)
AZURE_CLIENT_SECRET: (your client secret)
AZURE_TENANT_ID: (your tenant ID)
DataProtectionCertificateValue: (base64 encoded certificate)
ENVIRONMENT_URL: (your Dataverse environment URL)
Para Azure DevOps, armazene-os com segurança em Grupos de Variáveis com as permissões apropriadas.
PowerFx e autenticação de teste direto Dataverse
Para testes do provedor PowerFx e testes diretos, a autenticação funciona de maneira diferente dos testes baseados na web. Dataverse
Como funciona a autenticação PowerFx/Dataverse
- O Test Engine usa o Azure CLI para obter um token de acesso específico do recurso
- O token é usado para autenticação direta com APIs Dataverse
- Não há necessidade de autenticação de navegador ou baseada na web
Configurando PowerFx/Dataverse autenticação
Certifique-se de que o Azure CLI esteja instalado e atualizado:
winget install -e --id Microsoft.AzureCLI # Or update it if already installed az upgradeFaça login com o CLI do Azure:
# The --allow-no-subscriptions flag is important as you may not have Azure subscriptions az login --allow-no-subscriptionsExecute seu teste com o provedor PowerFx:
pac test run ` --provider powerfx ` --test-plan-file testplan.yaml ` --tenant your-tenant-id ` --environment-id your-environment-id ` --domain "https://your-environment.crm.dynamics.com"
Solução de problemas de autenticação
Esta seção contém informações sobre solução de problemas de autenticação com o Test Engine.
Problemas comuns com StorageState
Problema: O prompt de autenticação aparece em cada execução.
- Solução: Verifique se você selecionou Permanecer conectado durante o login.
Problema:
Cannot access secure storageerro.- Solução: Certifique-se de ter acesso apropriado à sua pasta de perfil de usuário.
Problemas comuns com autenticação Dataverse
Problema:
Certificate not founderro.- Solução: Verifique se o nome do certificado corresponde exatamente ao que está no seu armazenamento de certificados.
Problema:
Unable to connect to Dataverseerro.-
Solução: Verifique se o Azure CLI está conectado com
az login --allow-no-subscriptions.
-
Solução: Verifique se o Azure CLI está conectado com
Problema:
Access deniederro com a entidade de serviço.- Solução: Verifique se o aplicativo tem as permissões corretas em Dataverse e funções de segurança apropriadas.
Problemas comuns com PowerFx/Dataverse autenticação
Problema:
Unable to obtain access tokenerro-
Solução: Verifique se você está conectado com o Azure CLI usando
az account get-access-token
-
Solução: Verifique se você está conectado com o Azure CLI usando
Problema:
Access deniedpara Dataverse- Solução: Certifique-se de que o usuário conectado tenha as permissões apropriadas no Dataverse ambiente
Problema: Expiração de token durante longas execuções de testes
- Solução: Use uma entidade de serviço com expiração de token mais longa ou trate a reautenticação em etapas de teste
Artigos relacionados
Arquitetura de segurança de autenticação
Testar aplicações de tela
Testar aplicações orientadas a modelos
Extensões de teste Dataverse