Azure Playwright Cloud Testing
Scale TypeScript Playwright tests on Azure-hosted browsers and publish results.
The document recommends Microsoft Entra credentials, requires an explicit credential parameter, and shows OIDC plus read-only contents permissions in GitHub Actions, providing some least-privilege and authentication guidance. It does not explain the detailed data flows for cloud browsers, test targets, or portal reports, nor sensitive-data handling, user confirmation, isolation, or rollback, so points are deducted.
Installation, authentication, service configuration, execution, reporting, manual connection, and migration paths are broadly consistent, with timeout and version requirements documented. However, diagnostic and recovery guidance for authentication, network, quota, regional availability, and configuration failures is thin, and static review cannot verify API executability, so the score is conservative.
The target scenario is clear: TypeScript Playwright tests using cloud-hosted browsers, CI/CD, and Azure portal reporting, with examples for GitHub Actions and Azure Pipelines. Non-fit scenarios, input/output boundaries, compliance limits, and trigger exclusions are not specified; Chinese-language support is unaddressed, and the core service depends on Azure network reachability without mainland-China evidence, so points are deducted.
The skill has front matter, MIT licensing, a version, installation guidance, environment variables, typed options, a migration table, and best practices, with readable structure. It lacks a changelog, explicit maintenance owner and update path, FAQ, systematic limitations, and fuller parameter provenance, so it does not receive full marks.
Examples cover service configuration, parallel execution, the Azure reporter, manual connection, CI integration, and migration from the retired package, making the core task plausibly actionable. There is no skill-specific reproducible example, committed test coverage, or real execution result, and project, permission, and service setup still require review; the static ceiling therefore limits the score.
Specific package names, environment variables, commands, code samples, and migration mappings provide some auditability. The supplied material contains no dedicated tests, CI coverage, or third-party execution evidence for this skill path; repository-level harness material does not establish reproduction of its key paths, so only limited credit is justified.
- Cloud browsers and Azure portal reporting may encounter test pages, credential-related context, or test artifacts; confirm residency, redaction, access controls, and organizational compliance before use.
- The skill does not fully explain PLAYWRIGHT_SERVICE_URL, Entra permissions, regional behavior, or network requirements; reachability and latency should be validated in mainland-China environments.
- Failure diagnosis, quota handling, retry boundaries, and rollback procedures are not documented; validate initial adoption in a non-production project.
- The examples use npm init with latest and a broad Playwright dependency range; users still need version pinning, compatibility checks, and supply-chain review.
What it does & when to use it
This skill guides TypeScript projects in running Playwright tests on Azure Playwright Workspaces cloud-hosted browsers. It covers service configuration, Microsoft Entra authentication, custom credentials, parallel execution, CI/CD integration, and Azure portal reporting. It recommends the replacement package, @azure/playwright, and distinguishes the Playwright versions required for basic usage and Azure reporter features. It fits teams that need larger-scale browser testing or centralized Azure test reporting.
Guides installation of @azure/playwright, @playwright/test, and @azure/identity; configures PLAYWRIGHT_SERVICE_URL; authenticates with DefaultAzureCredential or ManagedIdentityCredential; connects to Linux or Windows cloud browsers through createAzurePlaywrightConfig; runs tests in parallel with npx playwright test; configures HTML and Azure reporters; supports manual browser connections through getConnectOptions; provides GitHub Actions and Azure Pipelines examples; and maps migration changes from the retired package to the new package.
- A TypeScript engineering team needs to run a large Playwright browser suite in parallel on Azure-hosted browsers.
- A CI/CD team needs GitHub Actions or Azure Pipelines examples for running cloud-based Playwright tests.
- A team using Azure identity wants Entra credentials instead of access tokens for service authentication.
- A team needs test results in the Azure portal and is able to use Playwright 1.57 or later.
Pros & cons
- Covers installation, authentication, service configuration, CI/CD, and reporting in one TypeScript workflow.
- Supports DefaultAzureCredential, ManagedIdentityCredential, Linux or Windows service browsers, and manual browser connections.
- Provides a concrete migration map from the old package to @azure/playwright.
- Includes GitHub Actions and Azure Pipelines examples.
- Requires Azure Playwright Workspaces, a service URL, and appropriate Azure identity permissions; pricing and quota details are not documented in the source.
- Azure reporter features require Playwright 1.57+, while basic usage requires at least Playwright 1.47.
- The SKILL.md does not provide a skill-specific test suite or cross-platform validation results.
- The old @azure/microsoft-playwright-testing package is stated to retire on March 8, 2026.
How to install
From the target Agent Skills client, run npx skills add microsoft/skills and select this skill in the installation wizard. The README says skills are installed to the selected agent directory, such as .github/skills/ for GitHub Copilot. For project dependencies, use npm init @azure/playwright@latest to generate configuration, or run npm install @azure/playwright --save-dev, npm install @playwright/test@^1.47 --save-dev, and npm install @azure/identity --save-dev.
How to use
Create or use playwright.service.config.ts, import createAzurePlaywrightConfig, ServiceOS, and an Azure credential, set PLAYWRIGHT_SERVICE_URL, and pass the credential in the service configuration. Run tests with npx playwright test --config=playwright.service.config.ts --workers=20. When Azure reporting is needed, configure @azure/playwright/reporter; Azure reporter features require Playwright 1.57+. The source does not define a client-specific trigger prompt.
Compared to similar skills
The source explicitly compares the old @azure/microsoft-playwright-testing package with @azure/playwright. The new package uses createAzurePlaywrightConfig, connectTimeout, runName, and @azure/playwright/reporter, and requires an explicit credential; the old package used getServiceConfig, timeout, runId, and the former reporter.