| name | playwright-cli |
| description | Drive a browser via `playwright-cli` to validate the migrated Org App end-to-end — sign in with Fabric SSO, navigate between reports, confirm iframes render, capture screenshots for review. Use after a migration to verify reports load. |
| allowed-tools | Bash(playwright-cli:*) Bash(npx:*) Bash(npm:*) |
playwright-cli
When to use this skill
After org-app-parsing + org-app-theming have run and you've started the dev server, use playwright-cli to verify:
- The user can sign in via Fabric SSO
- The sidebar shows every report from the manifest
- Each report iframe loads without errors
- The theme colors apply correctly
Essential commands
playwright-cli open http://localhost:5173
playwright-cli snapshot
playwright-cli click e15
playwright-cli type "your-app-id"
playwright-cli press Enter
playwright-cli screenshot --filename=after-signin.png
playwright-cli console
playwright-cli eval "document.querySelectorAll('iframe').length"
playwright-cli close
Targeting elements
Use refs from snapshot (e5, e12, etc.), CSS selectors, or Playwright locators:
playwright-cli click "getByRole('link', { name: 'Store Sales Report' })"
playwright-cli click "iframe[title='Store Sales Report']"
Validation script for an Org App migration
playwright-cli open http://localhost:5173
playwright-cli snapshot
playwright-cli snapshot
playwright-cli screenshot --filename=sidebar.png
playwright-cli click "getByRole('link', { name: '<first report name>' })"
playwright-cli eval "document.querySelector('iframe')?.src"
playwright-cli console
playwright-cli close
Installation
If playwright-cli is not on PATH:
npx --no-install playwright-cli --version
npm install -g @playwright/cli@latest
Notes
- The first run will trigger an AAD redirect. Use a persistent profile (
--persistent) to skip sign-in on subsequent runs.
- The embed iframe loads
https://app.powerbi.com/reportEmbed?... — the user must already be a viewer of the workspace.
- Use
playwright-cli network to watch network activity if reports fail to load.