Skip to main content

playwright-test

Write a playwright test, make sure it runs, and is not flaky.

Jump to install

Source facts

Repository
PostHog/posthog
Last source activity
March 18, 2026 at 14:18
Detected SKILL.md language
English
Stars
39,613
Forks
3,339

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
playwright-test
description
Write a playwright test, make sure it runs, and is not flaky.
allowed-tools
Bash, Read, Edit, Write, Glob, Grep, Agent, mcp__playwright__*
Read @playwright/README.md for best practices, gotchas, and how to run tests. ## Rules - Follow the best practices in the README strictly - After UI interactions, always assert on UI changes, do not assert on network requests resolving - **Keep looping until all tests pass.** Do not give up or ask the user for help. You must resolve every failure yourself. ## Instructions You are to plan an end to end playwright test for a feature. ### Step 1: Plan the test(s) to be done. Use the Playwright MCP tools (e.g., `mcp__playwright__browser_navigate`, `mcp__playwright__browser_click`, `mcp__playwright__browser_screenshot`) to interact with the browser and plan your tests. After your exploration, present the plan to me for confirmation or any changes. ### Step 2: Implement the test plan - Write the tests, making sure to use common patterns used in neighbouring files. - Run the tests with `BASE_URL='http://localhost:8010' pnpm --filter=@posthog/playwright exec playwright test <file name> --retries 0 --workers 3` - Debug any failures. Look at screen shots, if needed launch the playwright mcp skills to interact with the browser. Go back to step 1 after attempting a fix. ### Step 3: Ensure no flaky tests After all tests pass in the file, run with `--repeat-each 10` added to the command. This will surface any flaky tests. If any test fails across the 10 runs, treat it as a real failure: go back to Step 2, debug, fix, and re-run Step 3. Do not proceed to Step 4 until every run of every test passes. ### Step 4: Report Once all tests pass, output a single line: **Testing Complete**
View on GitHub