Repository navigation
docs(comparisons): update Playwright vs Cypress for 2026 - #523
Conversation
Reflects Playwright 1.63 and Cypress 16.1: corrected browser support, architecture, parallelization, tabs/origins/iframes, component testing, and AI tooling. Refreshed comparison table, pros/cons, and frontmatter. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
hlenke
left a comment
There was a problem hiding this comment.
Needs changes · Rebase on main to clear the merge conflict, then fix the outdated Cypress same-origin rule. The rest of the rewrite checks out against the Playwright and Cypress docs.
Blocker: merge conflict. GitHub reports the PR as CONFLICTING. Since the merge base (3db03cb1), main changed this file once, in 749370d0 (#734), which capitalized "playwright" in the paragraph that starts "We've also seen testing become the battleground". This PR deletes that paragraph, so resolve the conflict by keeping the PR's version.
CI. preview-checks fails, but not because of this page. check-api-preview.mjs gets HTTP 404 on API reference pages under api-reference/status-pages/, status-page-incidents/, status-page-services/, and usage/ (run log). This PR only touches comparisons/frameworks/playwright-vs-cypress.mdx. The preview was probably built from the old base, so the check should pass after the rebase. Could not verify that until it reruns.
Overlap. Draft #774 (sentence case for headings) also edits this file. This PR already sentence-cases its own headings, so land it first and rebase #774 on it.
The corrections listed in the PR description hold up against the vendor docs: Cypress's browser list with experimental WebKit, Cypress parallelization only through Cypress Cloud with --record, Playwright's bundled MCP server and CLI (1.62), test agents (1.56), and framework-agnostic component testing. Details are under "What I checked".
Inline: 2 Important, 1 Wording.
What I checked
- Read the full diff from merge base
3db03cb1, and themainchange to this file since then (749370d0). gh pr checks 523:preview-checksfails and the other 5 pass. Read the failed log.gh pr view: CONFLICTING/DIRTY.- Cypress trade-offs: not a general purpose automation tool; one browser at a time; multiple tabs only through
@cypress/puppeteer; same-origin iframes can be queried, and a "switch into an iframe" command is still an open proposal. - Cypress cross-origin testing: since v14.0.0, a test is bound to an origin, not a superdomain, and cross-origin iframes can't be automated.
- Cypress launching browsers: Chrome, Chromium, Edge, and Firefox are supported. WebKit is experimental and needs
playwright-webkit. Electron is deprecated. - Cypress parallelization: requires
--recordto Cypress Cloud and works per spec file. - Cypress
cy.prompt: in beta since 15.13.0. It "Requires Cypress Cloud account and/or valid record key". - Cypress changelog: the latest release is 16.2.1 (Oct 28, 2026).
- Extra tabs are closed between tests: cypress-io/cypress#28204.
- Playwright release notes: the latest release is 1.64. 1.62 bundles the MCP server and
playwright-cli, and 1.56 introduced the planner, generator, and healer agents. - Playwright component testing: framework-agnostic and no longer experimental ("if your dev server can render it, Playwright can test it"). That matches the table row.
- Internal links
/concepts/monitoring-as-code,/detect/synthetic-monitoring/playwright-checks/overview, and/detect/synthetic-monitoring/browser-checks/visual-regressionsexist onmain. - Not run: the two code examples. The PR only removes a semicolon from the Cypress one. They are plain Playwright and Cypress tests, not Checkly constructs.
- Could not verify: "has widened the gap since" in npm downloads, which I did not check against npm data.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Summary
Updates the Playwright vs Cypress comparison to reflect Playwright 1.63 and Cypress 16.1. Facts verified against playwright.dev and docs.cypress.io.
Corrections
cy.origin(), and iframe limits for Cypress--record) or a third-party serviceUpdates
cy.prompt()and StudioTitle keeps "Playwright vs Cypress" order: per Ahrefs it has higher volume than "Cypress vs Playwright" (US 700 vs 500, global 3.2K vs 2.5K), and both share the same parent topic.
mint broken-linkspasses. Code examples unchanged.🤖 Generated with Claude Code