e2e-testing

Implements Playwright end-to-end test suites with Page Object Model, CI integration, and flaky test handling.

Updated Mar 22, 2026
One-click install
npx skills add https://github.com/diazMelgarejo/orama-system --skill e2e-testing-diazmelgarejo
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: e2e-testing
Source: https://github.com/diazMelgarejo/orama-system/tree/main/.cursor/.agents/skills/e2e-testing
Command: npx skills add https://github.com/diazMelgarejo/orama-system --skill e2e-testing-diazmelgarejo

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @playwright/test.

What problem does it solve? Writing stable, maintainable end-to-end tests is hard: tests break due to race conditions, timing issues, and poor structure, and teams struggle to integrate them into CI pipelines with useful failure artifacts. ## Core Features & Use Cases - Page Object Model Patterns: Structure tests with reusable page classes, locators, and async helpers for maintainable Playwright suites. - Flaky Test Management: Diagnose race conditions, network timing, and animation issues, and quarantine unstable tests with fixme/skip strategies. - CI/CD & Artifacts: Configure GitHub Actions workflows, HTML/JUnit reporters, screenshots, traces, and videos for failure debugging. - Use Case: A team shipping a web app needs browser tests for login, search, and checkout flows across Chromium, Firefox, and WebKit, with automatic retries and failure screenshots uploaded on every pull request. ## Quick Start Use the e2e-testing skill to create a Playwright test suite with Page Object Model for my app's login and search flows.

Frequently Asked Questions about e2e-testing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure Playwright tests with Page Object Model?

Create a class per page that exposes locators and action methods, such as goto, search, and getItemCount. Tests then instantiate the page object in beforeEach and call its methods, keeping selectors centralized and tests readable.

How to fix flaky Playwright tests in CI?

Replace arbitrary waitForTimeout calls with explicit waits like waitForResponse or locator auto-waiting, and avoid clicking during animations. Quarantine known-flaky tests with test.fixme or test.skip, and reproduce locally using --repeat-each=10.

Does Playwright support testing across multiple browsers?

Yes, Playwright projects in the config run the same suite against Chromium, Firefox, WebKit, and mobile device profiles like Pixel 5. Each project can have its own device settings and use options.

How do I capture screenshots and videos on Playwright test failure?

Set screenshot to 'only-on-failure', video to 'retain-on-failure', and trace to 'on-first-retry' in the use block of playwright.config.ts. You can also take manual screenshots with page.screenshot and upload the playwright-report folder as a CI artifact.

Can Playwright test Web3 wallet connection flows?

Yes, mock the wallet provider with context.addInitScript to inject a fake window.ethereum implementing methods like eth_requestAccounts and eth_chainId. Tests can then click connect buttons and assert the displayed wallet address without a real extension.