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.
Esta guía le ayuda a empezar a trabajar con ejemplos de Power Platform Playwright mediante la clonación del repositorio, la configuración de variables de entorno, la autenticación y la ejecución de la primera prueba de un extremo a otro.
Prerrequisitos
Antes de comenzar, asegúrese de que tiene:
- Node.js 20 o posterior
- Git
- Un entorno de Power Platform con al menos una aplicación implementada
- Una cuenta de usuario con acceso a la aplicación que desea probar
Nota:
Las pruebas de ejemplo de este repositorio tienen como destino la solución Northwind Traders . Puede usar su propia aplicación siguiendo los mismos patrones. Consulte Pruebas de ejemplo para obtener instrucciones de configuración.
Paso 1: Clonar el repositorio
git clone https://github.com/microsoft/power-platform-playwright-samples.git
cd power-platform-playwright-samples
Paso 2: Instalación de dependencias
El repositorio usa Rush para administrar el monorepo. Instale las dependencias con:
node common/scripts/install-run-rush.js install
Si prefiere trabajar directamente con el e2e-tests paquete:
cd packages/e2e-tests
npm install
Paso 3: Instalar exploradores
Instale Microsoft Edge (el explorador predeterminado para las pruebas de Power Platform):
cd packages/e2e-tests
npx playwright install msedge
Paso 4: Configurar el entorno
Copie la plantilla de entorno y rellene los valores:
cp .env.example .env
Abra .env y establezca las variables necesarias:
# Power Apps
POWER_APPS_BASE_URL=https://make.powerapps.com
POWER_APPS_ENVIRONMENT_ID=<your-environment-guid>
# Model-driven app (for model-driven app tests)
MODEL_DRIVEN_APP_URL=https://<org>.crm.dynamics.com/main.aspx?appid=<app-guid>
# Canvas app (for canvas tests)
CANVAS_APP_ID=<canvas-app-guid>
CANVAS_APP_TENANT_ID=<tenant-guid>
# Authentication
MS_AUTH_EMAIL=<your-test-user@domain.com>
MS_AUTH_CREDENTIAL_TYPE=password
MS_USER_PASSWORD=<password>
Sugerencia
En el caso de las canalizaciones de CI/CD, use la autenticación basada en certificados en lugar de contraseñas. Consulte la guía de autenticación para obtener más información.
Para obtener la lista completa de variables de entorno, consulte Referencia de variables de entorno.
Paso 5: Autenticación
La autenticación se ejecuta una vez para capturar un estado de almacenamiento del explorador que todas las pruebas reutilizan.
Autentícate en Power Apps
Ejecute el siguiente comando: Se abre una ventana del explorador para que inicie sesión:
npm run auth:headful
El estado de almacenamiento se guarda en .playwright-ms-auth/state-<email>.json.
Autenticación en la aplicación controlada por modelos (opcional)
Si está probando aplicaciones controladas por modelos, ejecute una segunda autenticación en el dominio de Dynamics 365:
npm run auth:mda:headful
El estado de almacenamiento de la aplicación controlada por modelos se guarda en .playwright-ms-auth/state-mda-<email>.json.
Nota:
Los estados de almacenamiento de autenticación expiran con la sesión. Repita estos pasos cuando las pruebas empiecen a producir errores de autenticación o configure la autenticación de CI/CD para renovar el estado automáticamente.
Paso 6: Ejecutar las pruebas
Ejecute todas las pruebas:
npx playwright test
Ejecute solo pruebas de canvas app:
npx playwright test tests/northwind/canvas --project=default
Ejecute solo pruebas de aplicaciones controladas por modelos:
npx playwright test tests/northwind/mda --project=model-driven-app
Vea el informe HTML después de la ejecución:
npx playwright show-report
Paso 7: Escribe tu primera prueba de Power Platform Playwright
En el ejemplo siguiente se muestra una prueba de aplicación de lienzo mínima. Cree un archivo en tests/my-app/my-app.test.ts:
import { test, expect } from '@playwright/test';
import { AppProvider, AppType, AppLaunchMode } from 'power-platform-playwright-toolkit';
const CANVAS_APP_URL = process.env.CANVAS_APP_URL!;
test('should load the app and display the gallery', async ({ page, context }) => {
const app = new AppProvider(page, context);
await app.launch({
app: 'My Canvas App',
type: AppType.Canvas,
mode: AppLaunchMode.Play,
skipMakerPortal: true,
directUrl: CANVAS_APP_URL,
});
const canvasApp = app.getCanvasAppPage();
const canvasFrame = page.frameLocator('iframe[name="fullscreen-app-host"]');
await expect(canvasFrame.locator('[data-control-name="Gallery1"]')).toBeVisible();
});
Ejecute la prueba:
npx playwright test tests/my-app/my-app.test.ts --project=default
Pasos siguientes
- Guía de autenticación Configuración de la autenticación de certificados para CI/CD
- Probar aplicaciones Canvas Guía completa de los patrones de pruebas de aplicaciones Canvas
- Probar aplicaciones controladas por modelos Pruebas de cuadrícula, formulario y barra de comandos
- Pruebas asistidas por IA Uso de MCP de Playwright para generar pruebas con IA