Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Playwright
  3. Playwright CRX

Playwright CRX

Apache-2.0TypeScriptv0.15.0

A Chrome Extensions flavor of Playwright for automating and testing browser extensions.

GitHubGitHub
633 stars124 forks0 contributors

What is Playwright CRX?

Playwright CRX is a Chrome Extensions flavor of the Playwright library that enables automation and testing of browser extensions. It leverages Chrome's debugger API to provide Playwright's powerful automation capabilities specifically for extension contexts, allowing developers to script interactions, record tests, and run assertions within extensions.

Target Audience

Developers building or testing Chrome Extensions who want to automate interactions, create end-to-end tests, or integrate with Playwright's ecosystem for reliable extension testing.

Value Proposition

It offers a seamless bridge between Playwright's robust testing framework and Chrome Extensions, providing a dedicated API, recorder tools, and tracing support that are not available in standard Playwright, making extension testing more accessible and integrated.

Overview

Playwright for chrome extensions

Use Cases

Best For

  • Automating interactions within Chrome Extensions for testing purposes
  • Recording Playwright scripts directly from browser extensions without external tools
  • Writing end-to-end tests for Chrome Extensions using Playwright's API
  • Debugging extension behavior with Playwright Trace Viewer compatibility
  • Creating custom Chrome Extensions that programmatically control web pages
  • Integrating extension testing into existing Playwright-based test suites

Not Ideal For

  • Projects testing web applications without any Chrome Extensions involvement
  • Teams requiring cross-browser testing for extensions on Firefox or Safari
  • Developers seeking a simple, general-purpose web automation tool without extension-specific complexities
  • Environments where Chrome's debugger API is disabled or restricted, such as secure corporate browsers

Pros & Cons

Pros

Chrome Extension Automation

Uses chrome.debugger to implement Playwright's ConnectionTransport, enabling direct control over extensions, as demonstrated in the API example for background service workers automating page interactions.

Integrated Recorder Tool

Provides a Chrome extension for recording Playwright scripts in multiple languages without external dependencies, featuring a side panel, shortcuts like Alt+Shift+R, and configurable options via an options page.

Tracing Compatibility

Supports Playwright Trace Viewer for debugging, allowing traces to be captured and uploaded, as shown in the tracing example with screenshots and snapshots.

Programmatic API

Offers a TypeScript/JavaScript API to create and control extensions programmatically from service workers, useful for automating complex workflows, with examples like todomvc-crx.

Cons

Chrome-Only Limitation

Tied exclusively to Chrome Extensions and the chrome.debugger API, making it unsuitable for testing extensions on other browsers or in non-Chrome environments, which limits cross-browser compatibility.

Not for General E2E

As noted in the README, it's not intended for writing end-to-end tests; users should use @playwright/test instead, indicating it's specialized and not a drop-in replacement for broader testing needs.

Complex Setup and Permissions

Requires understanding of both Playwright and Chrome Extensions development, with dependencies on debugger permissions that might need additional configurations or user consent, adding setup overhead.

Frequently Asked Questions

Quick Stats

Stars633
Forks124
Contributors0
Open Issues22
Last commit9 months ago
CreatedSince 2023

Tags

#playwright#chrome-extensions#typescript#testing#recorder#end-to-end-testing#extension-development#test-automation#browser-automation

Built With

T
TypeScript
P
Playwright

Included in

Playwright1.4k
Auto-fetched 12 hours ago

Related Projects

artillery-engine-playwrightartillery-engine-playwright

The complete load testing platform. Everything you need for production-grade load tests. Serverless & distributed. Load test with Playwright. Load test HTTP APIs, GraphQL, WebSocket, and more. Use any Node.js module.

Stars8,990
Forks552
Last commit12 days ago
CodeceptJSCodeceptJS

Supercharged End 2 End Testing Framework for NodeJS

Stars4,224
Forks751
Last commit1 day ago
@axe-core/Playwright@axe-core/Playwright

axe-core-npm is a collection of official npm packages that integrate the axe-core accessibility testing engine with popular web development and testing frameworks. It enables developers to incorporate automated accessibility checks directly into their testing workflows, helping to identify and fix accessibility issues early in the development process. ## Key Features - **Playwright Integration** — Run axe-core accessibility tests within Playwright test suites. - **Puppeteer Integration** — Integrate accessibility testing into Puppeteer automation scripts. - **React Integration** — Test React components for accessibility violations during development. - **WebdriverIO Integration** — Add accessibility checks to WebdriverIO end-to-end tests. - **CLI Tool** — Run accessibility tests from the command line on live websites or static files. - **Earl Reporter** — Generate EARL (Evaluation and Report Language) reports for standardized accessibility test results. - **WebdriverJS Support** — Legacy integration for WebDriverJS-based testing frameworks. ## Philosophy The project believes automated accessibility testing must achieve mainstream adoption by being trustworthy, fast, universally compatible, and widely available to promote digital equality.

Stars707
Forks76
Last commit1 day ago
playwright-bddplaywright-bdd

BDD testing with Playwright runner

Stars699
Forks81
Last commit3 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub