migrate-cypress-to-codeceptjs

Installation
SKILL.md

Migrate Cypress → CodeceptJS 4

Cypress and CodeceptJS share a goal — browser end-to-end testing — but differ in three foundational ways:

  1. Step queueing vs command chains. CodeceptJS auto-queues every I.* call onto an internal recorder; tests look synchronous and await is only needed for grabs (await I.grabTextFrom(...)). There is no .then() chain to thread state through.
  2. Helpers, not a bundled browser. I.* dispatches to a configured helper. Cypress is single-browser by design; CodeceptJS lets you pick Playwright (recommended for Cypress migrators — Chromium parity plus cross-browser), Puppeteer, or WebDriver, and the test code stays the same.
  3. First-class abstractions. Page objects, multi-user session(...), the auth plugin, and custom helpers are built in. Cypress projects accumulate ad-hoc versions of these; the migration consolidates them onto the framework's idioms.

Authoritative references: node_modules/codeceptjs/docs/basics.md, locators.md, playwright.md, custom-helpers.md, pageobjects.md.

When to trigger

Any of:

  • cypress.config.{js,ts,mjs} at the repo root.
  • A cypress/ directory with e2e/, support/, fixtures/, plugins/, or component/ subdirs.
  • cypress listed in devDependencies.
  • Test code calls cy.* (cy.visit, cy.get, cy.contains, cy.session, cy.intercept, cy.request, cy.task, cy.fixture, cy.origin, cy.mount), uses Cypress.Commands.add(...), or reads Cypress.env(...).
  • The user says "migrate / port / convert from Cypress".
Installs
9
GitHub Stars
1
First Seen
13 days ago
migrate-cypress-to-codeceptjs — codeceptjs/skills