Skip to content

Latest commit

 

History

History
36 lines (25 loc) · 1.69 KB

File metadata and controls

36 lines (25 loc) · 1.69 KB

The runner is a legacy webpack bundle that packages @packages/reporter and @packages/driver for use inside the Cypress test iframe. It is being progressively deprecated in favor of @packages/app, but still owns the production cypress_runner.js bundle and runner-level styles.

Key Commands

# Build the webpack bundle (development)
yarn workspace @packages/runner build

# Build for production (minified)
yarn workspace @packages/runner build-prod

Architecture

  • src/main.jsx — Entry point; assembles reporter and driver into the runner iframe
  • src/cross-origin.js — Handles cross-origin iframe communication
  • src/main.scss — Runner-level styles (including legacy Cypress styles)
  • unified-runner.tsx — Unified runner entry used in some Cypress app contexts
  • webpack.config.ts — Webpack configuration for the runner bundle
  • dist/ — Generated bundle output (do not edit)

Gotchas / Notes

  • This package is deprecated in favor of @packages/app. Do not add new features here; migrate to @packages/app instead.
  • Tests were moved to @packages/app; running cypress:open or cypress:run from this package will error.
  • Nx implicit dependencies on @packages/driver, @packages/reporter, and @packages/config mean any change in those packages invalidates the runner's Nx cache and triggers a rebuild.
  • dom.js uses webpack-specific loaders and cannot be imported directly by Vite.

Integration Points

  • Bundles @packages/reporter and @packages/driver as implicit webpack dependencies.
  • The built dist/cypress_runner.js is served by @packages/server to the browser.

Auto-Generated Files

  • dist/ — Generated by webpack; do not edit by hand.