playwright-app-testing
Uses Playwright to automate UI testing and verify frontend changes in a browser environment.
Install
mkdir -p .claude/skills/playwright-app-testing && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4578" && unzip -o skill.zip -d .claude/skills/playwright-app-testing && rm skill.zipInstalls to .claude/skills/playwright-app-testing
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Test the Expensify App using Playwright browser automation. Use when user requests browser testing, after making frontend changes, or when debugging UI issuesKey capabilities
- →Automates browser navigation flows
- →Executes UI interaction sequences
- →Verifies visual or functional state changes
- →Configures onboarding bypass flags
How it works
It manipulates the browser session via Playwright to simulate user behavior and inspect DOM elements.
Inputs & outputs
When to use playwright-app-testing
- →Verify UI bug fixes
- →Test frontend components
- →Automate onboarding flows
About this skill
Playwright App Testing
When to Use This Skill
Use Playwright testing when:
- User requests testing the App in a browser
- Verifying fixes or improvements you've made to UI/frontend code
- Debugging UI issues
Proactively use after making frontend changes to verify your work functions correctly.
Prerequisites Check
Before using Playwright tools, verify the dev server is running:
ps aux | grep "rspack" | grep -v grep
If server not running: Inform user to start with cd App && npm run web
Dev Server Details
- URL:
https://dev.new.expensify.com:8082/
Playwright Testing Workflow
- Verify server: Check Rspack process is running
- Navigate: Open
https://dev.new.expensify.com:8082/in the browser - Interact: Use Playwright MCP tools to inspect, click, type, and navigate
Do NOT add arbitrary waits after actions. Instead, take a snapshot to check the result and only add short waits if the page hasn't updated yet.
Dev Environment Sign-In
When signing in to dev environment:
- Email: Generate random Gmail address (e.g.,
user+throwaway<random>@gmail.com)- New Account: Press join to create account
- Existing Account: Security code: Always
000000
- Onboarding: The
SKIP_ONBOARDINGenv flag is set tofalseby default in.env. Whenfalse, onboarding screens will appear after sign-in for new accounts. Unless you are specifically asked to test onboarding, update the flag totruebefore starting the dev server so that onboarding is bypassed entirely:
If you need to test onboarding flows, set it back tosed -i '' 's/SKIP_ONBOARDING=false/SKIP_ONBOARDING=true/' .envfalse:
You can check the current value with:sed -i '' 's/SKIP_ONBOARDING=true/SKIP_ONBOARDING=false/' .env
Important: After changinggrep SKIP_ONBOARDING .envSKIP_ONBOARDINGin.env, the web dev server must be restarted for the change to take effect.
Example Usage
Scenario 1: User requests testing
User: "Test sign in to app"
→ Use this skill to verify server and test sign-in flow
Scenario 2: After making UI changes
You: "I've updated the expense form validation"
→ Proactively use this skill to verify the changes work in browser
Scenario 3: Investigating bug
User: "The submit button doesn't work on this page"
→ Use this skill to reproduce and verify the issue
When NOT to Use This Skill
Skip Playwright for:
- Backend service testing
- Unit tests
- Type checking
- Mobile native app testing (requires emulators/simulators)
When not to use it
- →Server-side logic debugging
- →Unit testing non-UI code
Prerequisites
Limitations
- →Requires dev server running
- →Tests are browser-bound
How it compares
It is environment-aware, specifically configured for the Expensify app stack, simplifying sign-in and onboarding bypass.
Compared to similar skills
playwright-app-testing side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| playwright-app-testing (this skill) | 1 | 5mo | Review | Intermediate |
| frontend-testing | 11 | 3mo | Review | Intermediate |
| feature-flags | 6 | 6mo | Review | Intermediate |
| vue-testing-best-practices | 5 | 6mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
frontend-testing
langgenius
Generate Vitest + React Testing Library tests for Dify frontend components, hooks, and utilities. Triggers on testing, spec files, coverage, Vitest, RTL, unit tests, integration tests, or write/review test requests.
feature-flags
Use when feature flag tests fail, flags need updating, understanding @gate pragmas, debugging channel-specific test failures, or adding new flags to React.
vue-testing-best-practices
vuejs-ai
Use for Vue.js testing. Covers Vitest, Vue Test Utils, component testing, mocking, testing patterns, and Playwright for E2E testing.
playwright-pro
alirezarezvani
Production-grade Playwright testing toolkit. Use when the user mentions Playwright tests, end-to-end testing, browser automation, fixing flaky tests, test migration, CI/CD testing, or test suites. Generate tests, fix flaky failures, migrate from Cypress/Selenium, sync with TestRail, run on BrowserStack. 55 templates, 3 agents, smart reporting.
bun-development
davila7
Modern JavaScript/TypeScript development with Bun runtime. Covers package management, bundling, testing, and migration from Node.js. Use when working with Bun, optimizing JS/TS development speed, or migrating from Node.js to Bun.
react-web
alinaqi
React web development with hooks, React Query, Zustand