원클릭으로
playwright-best-practices
Use when writing or modifying Playwright tests (.spec.ts, .test.ts with @playwright/test imports).
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use when writing or modifying Playwright tests (.spec.ts, .test.ts with @playwright/test imports).
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use when creating, reviewing, or updating a BRIEF.md (the quality law for a surface), defining what "good"/shippable means, or setting up a verified autonomous loop.
Use when checking deployment health, investigating errors, reading logs, or working with Tiltfiles. Queries Tilt resource status, logs, and manages dev environments.
Use when starting tilt, debugging Tiltfile errors, or bootstrapping a dev environment. Starts Tilt in zmx, monitors bootstrap to healthy state, fixes Tiltfile bugs without hard-coding or fallbacks.
Use when creating commits, managing branches, opening PRs, or rewriting history. Not for non-git implementation tasks or repo-specific release policy decisions.
Use when syncing a feature branch onto the latest origin base branch via git rebase.
Fetch latest from origin, prune remote-tracking refs, delete stale local branches and worktrees, and fast-forward important branches. Use when tidying up a worktree-based repo layout.
| name | playwright-best-practices |
| description | Use when writing or modifying Playwright tests (.spec.ts, .test.ts with @playwright/test imports). |
When running Playwright tests from Claude Code or any CLI agent, always use minimal reporters to prevent verbose output from consuming the context window.
Use --reporter=line or --reporter=dot for CLI test runs. Configure playwright.config.ts to default to minimal reporters when CI or CLAUDE env vars are set — see playwright-patterns.md for the config snippet.
Always prefer user-facing attributes:
page.getByRole('button', { name: 'Submit' }) — accessibility rolespage.getByLabel('Email') — form control labelspage.getByPlaceholder('Search...') — input placeholderspage.getByText('Welcome') — visible text (non-interactive)page.getByAltText('Logo') — image alt textpage.getByTitle('Settings') — title attributespage.getByTestId('submit-btn') — explicit test contractsawait expect(locator).toBeVisible(), never expect(await locator.isVisible()).toBe(true) — web-first matchers auto-wait and retrystorageState; never log in via UI in every testpage.waitForTimeout(ms) — use auto-waiting locators insteadpage.locator('.class') — use role/label/testid--reporter=line or --reporter=dotawait expect() web-first matcherspage.waitForTimeout() — use auto-waitingline/dot) used in CI/agent contextsSee playwright-patterns.md for Page Object Model, fixtures, network mocking, and configuration examples.