Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota
Las funciones de vista previa no están diseñadas para un uso en producción y pueden tener funcionalidad restringida. Estas características están disponibles antes del lanzamiento oficial, para que los clientes puedan obtener acceso anticipado y proporcionar comentarios.
Esta guía proporciona instrucciones paso a paso para configurar la autenticación en Test Engine. Para obtener una descripción general rápida de las opciones de autenticación, consulte Autenticación en el motor de pruebas.
Introducción a la autenticación
Test Engine admite dos métodos de autenticación para pruebas basadas en web para aplicaciones de lienzo y basadas en modelos.
- StorageState : configuración sencilla y predeterminada para el desarrollo individual (para lienzos web y pruebas de aplicaciones basadas en modelos)
- Dataverse - Enfoque basado en equipos para compartir usuarios de prueba y CI/CD (para pruebas de aplicaciones basadas en modelos y lienzos web)
La autenticación se maneja de manera diferente para el proveedor PowerFx y las pruebas directas de Dataverse. "Estas pruebas obtienen tokens de acceso directamente de su sesión iniciada en la CLI de Azure, usando comandos para obtener tokens de acceso a los recursos. az" Asegúrese de haber iniciado sesión con az login --allow-no-subscriptions antes de ejecutar este tipo de pruebas.
Configuración rápida: autenticación de StorageState
La autenticación de StorageState es la forma más sencilla de comenzar. Utiliza la API de protección de datos de Windows para almacenar de forma segura tokens de autenticación en su máquina local.
Paso 1: Ejecute su prueba con la autenticación predeterminada
Ejecute el siguiente comando de PowerShell reemplazando los parámetros que comienzan con your.
pac test run `
--provider canvas `
--test-plan-file your-test-plan.yaml `
--tenant your-tenant-id `
--environment-id your-environment-id
Nota
El parámetro pac test run--user-auth no se utiliza en este ejemplo porque el proveedor predeterminado es StorageState. Puedes incluirlo si lo deseas.
Paso 2: Complete el inicio de sesión interactivo
Ingrese las credenciales de su cuenta de usuario de prueba
- Se abre automáticamente una ventana del navegador.
- Inicie sesión con su cuenta de usuario de prueba
- Si se le solicita, apruebe las solicitudes de MFA y consentimiento
- Seleccione "Mantener la sesión iniciada" cuando se le solicite
Su autenticación ahora está guardada.
- El motor de pruebas almacena de forma segura su autenticación
- Las futuras ejecuciones de pruebas utilizarán el estado guardado sin necesidad de iniciar sesión.
- Los tokens se actualizan automáticamente cuando es necesario
Configuración del equipo: Autenticación de Dataverse
La autenticación de Dataverse es perfecta para equipos y flujos de trabajo de CI/CD. Almacena de forma segura estados de usuarios autenticados en Dataverse, cifrados con certificados X.509.
Paso 1: Descargue e importe la solución Test Engine
- Descargue la Power Platform solución desde https://aka.ms/TestEngineAuth.
- Inicie sesión en Power Apps.
- Seleccione su entorno de destino.
- Vaya a Soluciones y seleccione Importar solución.
- Siga el asistente para cargar e instalar la solución Test Engine.
Paso 2: Crear un certificado para el cifrado
Para obtener un certificado autofirmado (solo para desarrollo), ejecute el siguiente script de PowerShell:
$Params = @{
DnsName = @("testengine", "testengine")
CertStoreLocation = "Cert:\CurrentUser\My"
NotAfter = (Get-Date).AddMonths(6)
KeyAlgorithm = "RSA"
KeyLength = 2048
}
New-SelfSignedCertificate @Params
Para producción, utilice un certificado de la autoridad de certificación de su empresa.
Paso 3: Configura tu usuario de prueba
Complete los siguientes pasos para configurar su usuario de prueba:
Abra su terminal y cierre sesión en cualquier sesión existente.
# Clear Power Platform CLI credentials pac auth clear # Clear Azure CLI credentials az logoutIniciar sesión con la CLI de Azure (necesario para la autenticación de Dataverse)
az login --allow-no-subscriptionsEstablezca el nombre de su certificado como una variable de entorno de PowerShell denominada: ...
DataProtectionCertificateName$env:DataProtectionCertificateName = "CN=testengine"Ejecute su prueba con autenticación: Dataverse
pac test run ` --provider canvas ` --user-auth Dataverse ` --auth Certstore ` --test-plan-file testplan.yaml ` --tenant your-tenant-id ` --environment-id your-environment-idNota
A diferencia de StorageState, en este caso debe utilizar el parámetro
--user-authcon un valor deDataverse.Complete el inicio de sesión interactivo cuando se le solicite.
Configuración de principales de servicio (para CI/CD)
Para realizar pruebas automatizadas en pipelines de CI/CD, puede utilizar entidades de servicio en lugar de cuentas de usuario interactivas.
Paso 1: Crear un registro de aplicación en ID Microsoft Entra
Complete los siguientes pasos para crear un registro de aplicación en Microsoft Entra ID.
- Iniciar sesión en el centro de administración Microsoft Entra
- Vaya a Aplicaciones>Registros de aplicaciones
- Seleccionar Nuevo registro
- Introduzca un nombre (por ejemplo, "Automatización del motor de pruebas")
- Mantenga las opciones predeterminadas y seleccione Registrar
- Después de la creación, anote el ID de la aplicación (cliente) y el ID del directorio (inquilino).
Paso 2: Configurar los permisos de API para Dataverse
Complete los siguientes pasos para configurar los permisos de API para Dataverse.
- En el registro de su aplicación, vaya a Permisos de API
- Seleccione Agregar permiso
- Elija las API que utiliza mi organización
- Buscar y seleccionar Dataverse
- Seleccionar Permisos delegados
- Comprobar la suplantación de usuario
- Seleccione Agregar permisos
- Seleccione Otorgar consentimiento de administrador
Paso 3: Crear un secreto de cliente
Complete los siguientes pasos para crear un secreto de cliente.
- Vaya a Certificados y secretos
- Seleccionar Nuevo secreto de cliente
- Añade una descripción y elige un vencimiento
- Copia el Valor secreto inmediatamente (no podrás volver a verlo)
Paso 4: Agregue el usuario de la aplicación a Dataverse
Complete los siguientes pasos para agregar el usuario de la aplicación a Dataverse.
- Abra el Centro de administración Power Platform
- Seleccionar el entorno
- Vaya a Configuración>Usuarios + permisos>Usuarios de la aplicación
- Seleccionar + Nuevo usuario de la aplicación
- Busca y selecciona tu aplicación
- Asignar roles de unidad de negocio y seguridad apropiados (incluido el rol de "Usuario del motor de pruebas")
- Guarde los cambios
Paso 5: Configura tu pipeline de CI/CD
Añade estas variables a tu 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, guárdelos de forma segura en Grupos de variables con los permisos adecuados.
PowerFx y autenticación de prueba directa de Dataverse
Para las pruebas del proveedor PowerFx y las pruebas directas de Dataverse, la autenticación funciona de manera diferente a las pruebas basadas en la web.
Cómo funciona la autenticación de PowerFxDataverse
- El motor de pruebas utiliza la CLI de Azure para obtener un token de acceso específico del recurso
- El token se utiliza para autenticarse directamente con las API Dataverse
- No se requiere autenticación basada en navegador ni web
Configuración de autenticación de PowerFx/Dataverse
Asegúrese de que la CLI de Azure esté instalada y actualizada:
winget install -e --id Microsoft.AzureCLI # Or update it if already installed az upgradeIniciar sesión con la CLI de Azure:
# The --allow-no-subscriptions flag is important as you may not have Azure subscriptions az login --allow-no-subscriptionsEjecute su prueba con el proveedor 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"
Solución de problemas de autenticación
Esta sección contiene información sobre cómo solucionar problemas de autenticación con Test Engine.
Problemas comunes con StorageState
Problema: Aparece una solicitud de autenticación en cada ejecución.
- Solución: Verifique si seleccionó Permanecer conectado durante el inicio de sesión.
Problema:
Cannot access secure storageerror.- Solución: Asegúrese de tener acceso adecuado a su carpeta de perfil de usuario.
Problemas comunes con la autenticación Dataverse
Problema:
Certificate not founderror.- Solución: Verifique que el nombre del certificado coincida exactamente con el que hay en su almacén de certificados.
Problema:
Unable to connect to Dataverseerror.-
Solución: Verifique que la CLI de Azure haya iniciado sesión con
az login --allow-no-subscriptions.
-
Solución: Verifique que la CLI de Azure haya iniciado sesión con
Problema:
Access deniederror con el principal del servicio.- Solución: Verifique que la aplicación tenga los permisos correctos y los roles de seguridad adecuados. Dataverse
Problemas comunes con la autenticación de PowerFx/Dataverse
Problema:
Unable to obtain access tokenerror-
Solución: Verifique que haya iniciado sesión con la CLI de Azure usando
az account get-access-token
-
Solución: Verifique que haya iniciado sesión con la CLI de Azure usando
Problema:
Access deniedpara Dataverse- Solución: Asegúrese de que el usuario que inició sesión tenga los permisos adecuados en el entorno. Dataverse
Problema: Caducidad del token durante ejecuciones de prueba largas
- Solución: utilice un principal de servicio con un vencimiento de token más largo o gestione la nueva autenticación en los pasos de prueba
Artículos relacionados
Arquitectura de seguridad de autenticación
Probar aplicaciones de canvas
Pruebe aplicaciones basadas en modelos
Extensiones de prueba Dataverse