Informazioni di riferimento sulle variabili di ambiente

Questo riferimento alle variabili di ambiente illustra tutte le impostazioni di configurazione per gli esempi playwright di Power Platform. Per lo sviluppo locale, impostare queste variabili in packages/e2e-tests/.env. In CI/CD impostarli come segreti o variabili della pipeline. Per istruzioni specifiche della pipeline, vedere Integrazione CI/CD.

Variabili di autenticazione

Queste variabili controllano il modo in cui il framework di test esegue l'autenticazione nei servizi Power Platform.

Variabile Obbligatorio Descrizione
MS_AUTH_EMAIL Indirizzo di posta elettronica dell'account utente di test
MS_AUTH_CREDENTIAL_TYPE Metodo di autenticazione: password o certificate
MS_USER_PASSWORD Se credential_type=password Password per l'utente di test
MS_AUTH_CREDENTIAL_PROVIDER Se credential_type=certificate Origine certificato: local-file o azure-keyvault
MS_AUTH_LOCAL_FILE_PATH Se provider=local-file Percorso relativo del file del .pfx certificato
MS_AUTH_CERTIFICATE_PASSWORD No Password per il .pfx certificato (se protetto)

variabili Azure Key Vault

Obbligatorio quando MS_AUTH_CREDENTIAL_PROVIDER=azure-keyvault:

Variabile Descrizione
AZURE_KEYVAULT_URL Key Vault URL, ad esempio https://<vault-name>.vault.azure.net/
AZURE_CERTIFICATE_NAME Nome del certificato archiviato in Key Vault
AZURE_TENANT_ID ID tenant Microsoft Entra
AZURE_CLIENT_ID (Facoltativo) ID client dell'entità servizio per l'identità federata

Variabili DELL'URL dell'app

Queste variabili specificano gli URL delle app sottoposte a test.

Variabile Obbligatorio Descrizione
CANVAS_APP_URL Per i test canvas URL in modalità di riproduzione completa dell'app canvas, tra cui ?tenantId=<id>
MODEL_DRIVEN_APP_URL Per i test delle app basate su modello URL completo dell'app basata su modello (/main.aspx?appid=<id>)
CUSTOM_PAGE_NAME Per i test di pagina personalizzati Nome visualizzato dell'elemento della mappa della pagina personalizzata, ad esempio AccountsCustomPage

Compilare l'URL dell'app canvas

Usare buildCanvasAppUrlFromEnv() dal toolkit per costruire l'URL da singole parti, se necessario:

import { buildCanvasAppUrlFromEnv } from 'power-platform-playwright-toolkit';

const url = buildCanvasAppUrlFromEnv();
// Reads CANVAS_APP_URL from environment

In alternativa, impostarlo in modo esplicito in .env:

CANVAS_APP_URL=https://apps.powerapps.com/play/e/default-<tenant-id>/a/<app-id>?tenantId=<tenant-id>

Ottenere l'URL dell'app basata su modello

Seguire questa procedura per trovare l'URL corretto per l'app basata su modello.

  1. Aprire l'app basata su modello in modalità di riproduzione.
  2. Copiare l'URL dalla barra degli indirizzi del browser.
  3. Rimuovere i parametri di query dopo appid=<guid> che sono specifici della sessione.
MODEL_DRIVEN_APP_URL=https://<org>.crm.dynamics.com/main.aspx?appid=<app-guid>

Variabili dello stato di archiviazione

Il toolkit calcola queste variabili da MS_AUTH_EMAIL. Non impostarli direttamente.

Percorso Descrizione
.playwright-ms-auth/state-<email>.json Power Apps stato di autenticazione (test dell'esperienza utente canvas/generazione)
.playwright-ms-auth/state-mda-<email>.json Dynamics 365 stato di autenticazione (test MDA)

Eseguire l'override della directory dello stato di archiviazione:

MS_AUTH_STORAGE_DIR=../../.auth

Flag CI/CD

Usare questo flag per regolare il comportamento di test per gli ambienti di integrazione continua.

Variabile Impostazione predefinita Descrizione
CI false Impostare su true in CI per abilitare retries: 1, forbidOnlye timeout più rigidi

Playwright legge CI automaticamente. Non è necessario impostarlo in .env , ovvero gli ambienti della pipeline lo impostano per convenzione.

File con estensione env di esempio

Usare questi esempi come punto di partenza per il file locale .env .

# Authentication
MS_AUTH_EMAIL=testuser@contoso.com
MS_AUTH_CREDENTIAL_TYPE=password
MS_USER_PASSWORD=<your-password>

# App URLs
CANVAS_APP_URL=https://apps.powerapps.com/play/e/default-<tenant-id>/a/<app-id>?tenantId=<tenant-id>
MODEL_DRIVEN_APP_URL=https://<org>.crm.dynamics.com/main.aspx?appid=<app-id>
CUSTOM_PAGE_NAME=AccountsCustomPage

Per l'autenticazione del certificato:

# Authentication (certificate)
MS_AUTH_EMAIL=testuser@contoso.com
MS_AUTH_CREDENTIAL_TYPE=certificate
MS_AUTH_CREDENTIAL_PROVIDER=local-file
MS_AUTH_LOCAL_FILE_PATH=../../cert/testuser.pfx
MS_AUTH_CERTIFICATE_PASSWORD=<pfx-password>

# App URLs
CANVAS_APP_URL=https://apps.powerapps.com/play/...
MODEL_DRIVEN_APP_URL=https://<org>.crm.dynamics.com/...

Per Azure Key Vault:

# Authentication (Key Vault)
MS_AUTH_EMAIL=testuser@contoso.com
MS_AUTH_CREDENTIAL_TYPE=certificate
MS_AUTH_CREDENTIAL_PROVIDER=azure-keyvault
AZURE_KEYVAULT_URL=https://mykeyvault.vault.azure.net/
AZURE_CERTIFICATE_NAME=playwright-test-cert
AZURE_TENANT_ID=<tenant-guid>

# App URLs
CANVAS_APP_URL=https://apps.powerapps.com/play/...
MODEL_DRIVEN_APP_URL=https://<org>.crm.dynamics.com/...

Nota sulla sicurezza

Seguire queste procedure per proteggere le credenziali e i dati della sessione.

  • Non eseguire mai il commit dei .env file nel controllo del codice sorgente. L'oggetto .gitignore nel repository li esclude.
  • Non eseguire mai il commit .playwright-ms-auth/ dei file di stato. Contengono token di sessione.
  • In CI/CD impostare tutti i segreti tramite l'archivio segreto della pipeline, non nel file YAML archiviato.

Passaggi successivi

Vedere anche