이 환경 변수 참조는 Power Platform Playwright 샘플에 대한 모든 구성 설정을 다룹니다. 로컬 개발의 경우 다음 변수를 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 |
No | 인증서의 .pfx 암호(보호된 경우) |
변수 Azure Key Vault
필요한 경우 MS_AUTH_CREDENTIAL_PROVIDER=azure-keyvault:
| Variable | Description |
|---|---|
AZURE_KEYVAULT_URL |
Key Vault URL(예: https://<vault-name>.vault.azure.net/) |
AZURE_CERTIFICATE_NAME |
Key Vault 저장된 인증서의 이름 |
AZURE_TENANT_ID |
Microsoft Entra 테넌트 ID |
AZURE_CLIENT_ID |
(선택 사항) 페더레이션 ID에 대한 서비스 주체 클라이언트 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을 찾습니다.
- 재생 모드에서 모델 기반 앱을 엽니다.
- 브라우저 주소 표시줄에서 URL을 복사합니다.
- 세션별 쿼리 매개 변수를
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 인증 상태(캔버스/Gen UX 테스트) |
.playwright-ms-auth/state-mda-<email>.json |
Dynamics 365 인증 상태(MDA 테스트) |
스토리지 상태 디렉터리를 재정의합니다.
MS_AUTH_STORAGE_DIR=../../.auth
CI/CD 플래그
이 플래그를 사용하여 연속 통합 환경에 대한 테스트 동작을 조정합니다.
| Variable | Default | Description |
|---|---|---|
CI |
false |
CI에서 설정하여 true 더 엄격한 시간 제한을 사용하도록 설정 retries: 1forbidOnly |
극작가는 자동으로 읽습니다 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이 아닌 파이프라인의 비밀 저장소를 통해 모든 비밀을 설정합니다.