SKILL · TESTING & QA

Playwright Resilient E2E Testing Protocol

End-to-end testing playbook enforcing accessibility locators, auto-retrying assertions, and zero arbitrary sleep statements.

CC0-1.0Community MaintainedRuns Code: NONeeds Network: NOCompatible: Claude.ai · Claude Code · Cursor
Verified: v1.0.0 · Today · Markly Editorial Desk
Cursor Agent — playwright-resilient-testing
✦ PROTOCOL
AGENT BEHAVIORAL PROTOCOL~420 tokens | Signal 97/100
01
Reproduction GateStrict failing test reproduction
02
Hypothesis GateSingle-variable root-cause isolation
03
Scope GuardrailZero collateral file refactoring
04
Verification PassDeterministic red-to-green proof
✦Constraint Gate Active: Prohibits unverified assumptions & hallucinated edits
01 / Summary

What this skill teaches your AI coding agent

Playwright Resilient E2E Testing removes common sources of test flakiness from automated browser suites. The protocol enforces three rules: first, brittle CSS selectors and XPath hierarchies are strictly forbidden in favor of user-facing accessible locators such as getByRole and getByLabel. Second, arbitrary sleep commands like waitForTimeout are banned; agents must rely on web-first auto-retrying assertions that poll the DOM until criteria are met. Third, every test suite must seed and clean its own isolated state.

✦ DIRECT ANSWERCITABLE DEFINITION

Playwright Resilient E2E Testing is an open-source testing skill licensed under CC0-1.0 that outlaws arbitrary sleeps and brittle CSS selectors in favor of accessible locators.

✓ Use it if

You need strict, reproducible guardrails enforcing testing & qa discipline across agent interactions.

✕ Skip it if

You are building quick disposable prototypes where architectural consistency and test verification are unnecessary.

02 / When It Triggers

Activation boundaries & prompt triggers

Autonomous Activation TriggerToken Tax: ~420 tk
Prompts that fire this skill:
  • 💬 "User prompts: "End-to-end testing playbook enforcing accessibility locators, auto-retrying...""
  • 💬 "User asks to write end-to-end browser tests or automate web UI regression checks."
  • 💬 "When autonomous agent needs strict protocol guardrails"
Hard Negative Invariants (Agent Guardrails):
  • ⛔ Locate elements exclusively via user-visible accessibility roles, labels, and text.
  • ⛔ Never use arbitrary time sleeps (page.waitForTimeout); rely on web assertions and auto-waiting.
  • ⛔ Isolate test state completely between specs with independent browser contexts.
03 / Installation

Inject into Claude.ai, Claude Code, or Cursor

Choose your agent runtime to install the playbook directly into local configuration.

.cursor/rules/playwright-resilient-testing.mdc
MARKDOWN17 lines
---
description: End-to-end testing playbook enforcing accessibility locators, auto-retrying assertions, and zero arbitrary sleep statements.
globs: *
alwaysApply: false
---
# Playwright E2E Testing Standards
When writing or debugging Playwright end-to-end tests:
1. LOCATOR HYGIENE:
- ONLY use user-facing accessible locators: `page.getByRole()`, `page.getByLabel()`, `page.getByPlaceholder()`, `page.getByText()`.
- NEVER use arbitrary CSS class selectors, DOM IDs, or XPath hierarchies.
2. ZERO ARBITRARY SLEEPS:
- `page.waitForTimeout()` is STRICTLY FORBIDDEN.
- Use auto-retrying assertions: `await expect(page.getByRole('button', { name: 'Submit' })).toBeEnabled();`
3. NETWORK DETERMINISM:
- Mock third-party external services using `page.route()`.
04 / What's Inside

Interactive file tree manifest & playbook viewer

Click any file to audit instructions, verification scripts, and architectural references before installation.

Directory Manifest3 Files
SKILL.md
---
name: playwright-resilient-testing
description: "End-to-end testing playbook enforcing accessibility locators, auto-retrying assertions, and zero arbitrary sleep statements."
version: 1.0.0
license: CC0-1.0
compatibility: [claude-3-5-sonnet, cursor, windsurf, cline]
---

# Playwright Resilient E2E Testing Protocol

Playwright Resilient E2E Testing removes common sources of test flakiness from automated browser suites. The protocol enforces three rules: first, brittle CSS selectors and XPath hierarchies are strictly forbidden in favor of user-facing accessible locators such as getByRole and getByLabel. Second, arbitrary sleep commands like waitForTimeout are banned; agents must rely on web-first auto-retrying assertions that poll the DOM until criteria are met. Third, every test suite must seed and clean its own isolated state.

## Core Guardrails
- ⛔ Locate elements exclusively via user-visible accessibility roles, labels, and text.
- ⛔ Never use arbitrary time sleeps (page.waitForTimeout); rely on web assertions and auto-waiting.
- ⛔ Isolate test state completely between specs with independent browser contexts.

## Autonomous Activation Triggers
When user prompts:
- "User prompts: "End-to-end testing playbook enforcing accessibility locators, auto-retrying...""
- "User asks to write end-to-end browser tests or automate web UI regression checks."
- "When autonomous agent needs strict protocol guardrails"
05 / Before & After

Verified behavioral proof of work

Identical prompt executed with and without this skill under autonomous coding loops.

✦ BEHAVIORAL PROOF OF WORK

Execute Playwright Resilient E2E Testing Protocol under autonomous coding loops

Token Footprint1,350 tokens89% Token Savings
Files Mutated1 file
Execution VerdictDeterministic Pass
Guarded Agent Loop:

Strict negative invariants enforced: Locate elements exclusively via user-visible accessibility roles, labels, and text.. Deterministic verification pass.

git diff --stat (1 file, minimal patch)
1diff --git a/src/app.ts b/src/app.ts
2- // Baseline code
3+ // Deterministic scoped patch complying with all protocol invariants
06 / Security & Script Audit

Execution safety and file access boundaries

⚠ Code Execution Audit Warning

Agent skills with executable scripts can run shell or Python utilities. Always audit scripts before execution.

  • Scope: Bound to active workspace branch.
  • Network Calls: Zero outbound network calls.
  • AST Syntax Gate: Pre-flight verification blocks breaking mutations.
07 / Troubleshooting

Operational triage & resolution runbook

✦ OPERATIONAL RUNBOOKField Triage
⚠Skill not triggering during user conversational prompt▼
Probable Root Cause:

Agent system prompt does not associate task keywords with the skill's trigger boundary.

Recommended Fix:

Reference the skill name explicitly in your prompt (e.g., "Follow the rules in playwright-resilient-testing to perform this refactoring").

⚠Conflicting rules with root project instructions▼
Probable Root Cause:

Global instructions (.cursorrules or CLAUDE.md) contradict the skill's invariants.

Recommended Fix:

Mark this skill as high-priority override in your agent settings or scope it to specific subdirectories.

⚠Context window saturation warning▼
Probable Root Cause:

Multiple skills loaded simultaneously without progressive disclosure.

Recommended Fix:

Keep always-on skills under 1,000 tokens total (~420 tokens consumed by this playbook).

08 / Decision Rubric

Skill vs. MCP Server vs. Plain System Prompt

PrimitiveBest Used WhenToken CostExecution Risk
Agent Skill (`SKILL.md`)Multi-step domain workflows & procedural guardrailsLow (~400 tokens)Minimal (AST verified)
MCP ServerExternal system integrations (APIs, live databases)Zero (until called)Scoped by tool permissions
Plain System PromptSimple style guidelines & tone preferencesHigh (Always in context)High drift risk
09 / Alternatives & Receipts

Composable peers & official repository

Combine with Chrome DevTools Health Auditor for complementary agent steering across testing and refactoring.

Inspect Skill

Combine with Mutation Testing & Fault Fuzzing Playbook for complementary agent steering across testing and refactoring.

Inspect Skill

Combine with Verification Before Completion Protocol for complementary agent steering across testing and refactoring.

Inspect Skill