Справочник по переменным среды

Ссылка на переменные среды охватывает все параметры конфигурации для примеров Playwright Power Platform. Для локальной разработки задайте эти переменные в packages/e2e-tests/.env. В CI/CD задайте их в качестве секретов конвейера или переменных. Инструкции, связанные с конвейером, см. в разделе интеграции CI/CD.

Переменные аутентификации

Эти переменные управляют проверкой подлинности платформы тестирования в службах Power Platform.

Variable Обязательный Description
MS_AUTH_EMAIL Да Адрес электронной почты тестовой учетной записи пользователя
MS_AUTH_CREDENTIAL_TYPE Да Метод проверки подлинности: password или certificate
MS_USER_PASSWORD Если credential_type=password Пароль для тестового пользователя
MS_AUTH_CREDENTIAL_PROVIDER Если credential_type=certificate Источник сертификата: local-file или azure-keyvault
MS_AUTH_LOCAL_FILE_PATH Если provider=local-file Относительный путь к файлу .pfx сертификата
MS_AUTH_CERTIFICATE_PASSWORD Нет Пароль для .pfx сертификата (если он защищен)

переменные Azure Key Vault

Обязательный, если MS_AUTH_CREDENTIAL_PROVIDER=azure-keyvault:

Variable Description
AZURE_KEYVAULT_URL URL-адрес Key Vault, например https://<vault-name>.vault.azure.net/
AZURE_CERTIFICATE_NAME Имя сертификата, хранящегося в Key Vault
AZURE_TENANT_ID идентификатор клиента Microsoft Entra
AZURE_CLIENT_ID (Необязательно) Идентификатор клиента субъекта-службы для федеративного удостоверения

Переменные URL-адреса приложения

Эти переменные указывают URL-адреса тестируемых приложений.

Variable Обязательный Description
CANVAS_APP_URL Для тестов холста Полный URL-адрес приложения холста в режиме воспроизведения, включая ?tenantId=<id>
MODEL_DRIVEN_APP_URL Для тестов приложений на основе модели Полный URL-адрес приложения на основе модели (/main.aspx?appid=<id>)
CUSTOM_PAGE_NAME Для пользовательских тестов страниц Отображаемое имя пользовательского элемента карты сайта страницы, например AccountsCustomPage

Создание URL-адреса приложения на основе холста

При необходимости используйте buildCanvasAppUrlFromEnv() набор средств для создания URL-адреса из отдельных частей:

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

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

Или задайте его явным образом в .env:

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

Получение URL-адреса приложения на основе модели

Выполните следующие действия, чтобы найти правильный URL-адрес для приложения на основе модели.

  1. Откройте приложение на основе модели в режиме воспроизведения.
  2. Скопируйте URL-адрес из адресной строки браузера.
  3. Удалите параметры запроса после appid=<guid> того, как это зависит от сеанса.
MODEL_DRIVEN_APP_URL=https://<org>.crm.dynamics.com/main.aspx?appid=<app-guid>

Переменные состояния хранилища

Набор средств вычисляет эти переменные из MS_AUTH_EMAIL. Не устанавливайте их напрямую.

Путь Description
.playwright-ms-auth/state-<email>.json Power Apps состояние проверки подлинности (тесты холста или пользовательского интерфейса пользовательский интерфейс)
.playwright-ms-auth/state-mda-<email>.json Dynamics 365 состояние проверки подлинности (тесты MDA)

Переопределите каталог состояния хранилища:

MS_AUTH_STORAGE_DIR=../../.auth

Флаг CI/CD

Используйте этот флаг для настройки поведения тестирования для сред непрерывной интеграции.

Variable Default Description
CI false Установите значение true в CI для включения retries: 1и forbidOnlyболее строгих времени ожидания

Драматург автоматически считывает CI . Вам не нужно задавать его в .env средах конвейера, заданных по соглашению.

Пример ENV-файла

Используйте эти примеры в качестве отправной точки для локального .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

Для проверки подлинности сертификата:

# 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/...

Для 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/...

Примечания по безопасности

Следуйте этим рекомендациям, чтобы обеспечить безопасность учетных данных и данных сеанса.

  • Никогда не фиксируйте .env файлы в системе управления версиями. В .gitignore репозитории их исключены.
  • Никогда не фиксируйте .playwright-ms-auth/ файлы состояния. Они содержат маркеры сеанса.
  • В CI/CD задайте все секреты через хранилище секретов конвейера, а не в yamL.

Дальнейшие действия

См. также