Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Ce guide vous aide à commencer à utiliser des exemples Power Platform Playwright en clonant le référentiel, en configurant des variables d’environnement, en authentifiant et en exécutant votre premier test de bout en bout.
Prerequisites
Avant de commencer, assurez-vous d’avoir :
- Node.js 20 ou version ultérieure
- Git
- Un environnement Power Platform avec au moins une application déployée
- Un compte d’utilisateur ayant accès à l’application que vous souhaitez tester
Note
Les exemples de tests de ce référentiel ciblent la solution Northwind Traders . Vous pouvez utiliser votre propre application en suivant les mêmes modèles. Consultez les exemples de tests pour obtenir des instructions de configuration.
Étape 1 : Cloner le référentiel
git clone https://github.com/microsoft/power-platform-playwright-samples.git
cd power-platform-playwright-samples
Étape 2 : Installer les dépendances
Le référentiel utilise Rush pour gérer le monorepo. Installez les dépendances avec :
node common/scripts/install-run-rush.js install
Si vous préférez travailler directement avec le e2e-tests package :
cd packages/e2e-tests
npm install
Étape 3 : Installer les navigateurs
Installez Microsoft Edge (navigateur par défaut pour les tests Power Platform) :
cd packages/e2e-tests
npx playwright install msedge
Étape 4 : Configurer votre environnement
Copiez le modèle d’environnement et renseignez vos valeurs :
cp .env.example .env
Ouvrez .env et définissez les variables requises :
# 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>
Conseil / Astuce
Pour les pipelines CI/CD, utilisez l’authentification basée sur des certificats au lieu de mots de passe. Pour plus d’informations, consultez le guide d’authentification .
Pour obtenir la liste complète des variables d’environnement, consultez la référence des variables d’environnement.
Étape 5 : S’authentifier
L’authentification s’exécute une fois pour capturer un état de stockage du navigateur que tous les tests réutilisent.
S’authentifier auprès de Power Apps
Exécutez la commande suivante : Une fenêtre de navigateur s’ouvre pour vous connecter :
npm run auth:headful
L’état de stockage est enregistré dans .playwright-ms-auth/state-<email>.json.
S’authentifier auprès de l’application pilotée par modèle (facultatif)
Si vous testez des applications basées sur des modèles, exécutez une deuxième authentification sur le domaine Dynamics 365 :
npm run auth:mda:headful
L’état de stockage de l’application pilotée par le modèle est enregistré dans .playwright-ms-auth/state-mda-<email>.json.
Note
Les états de stockage d’authentification expirent avec la session. Répétez ces étapes lorsque les tests commencent à échouer avec des erreurs d’authentification ou configurez l’authentification CI/CD pour renouveler automatiquement l’état.
Étape 6 : Exécuter les tests
Exécutez tous les tests :
npx playwright test
N’exécutez que les tests d’application Canvas :
npx playwright test tests/northwind/canvas --project=default
Exécutez uniquement les tests d’application pilotés par modèle :
npx playwright test tests/northwind/mda --project=model-driven-app
Affichez le rapport HTML après l’exécution :
npx playwright show-report
Étape 7 : Écrire votre premier test Power Platform Playwright
L’exemple suivant montre un test d'application canvas minimal. Créez un fichier à l’adresse tests/my-app/my-app.test.tssuivante :
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();
});
Exécutez le test :
npx playwright test tests/my-app/my-app.test.ts --project=default
Étapes suivantes
- Guide d’authentification Configurer l’authentification de certificat pour CI/CD
- Tester des applications de canevas Guide complet des modèles de test d’application de canevas
- Tester des applications basées sur des modèles Test de grille, de formulaire et de barre de commandes
- Tests assistés par l’IA Utiliser playwright MCP pour générer des tests avec l’IA