Migrating to Cypress V11
Cypress v10 introduce new features, like component testing, along with some breaking changes. Nx can help you migrate from v8 or v9 of Cypress to v10 and then to v11.
Before continuing, make sure you have all your changes committed and have a clean working tree.
You can migrate an E2E project to v11 by running the following command:
Generator Naming ChangesIf your nx version is below v15.3.0, this migration is called migrate-to-cypress-10
.
From v15.3.0+ this generator is called migrate-to-cypress-11
.
As of nx v15.1.0, if your project was already using Cypress v10, then your project will be migrated to Cypress v11 via the standard nx migration process
nx g @nrwl/cypress:migrate-to-cypress-11
In general, these are the steps taken to migrate your project:
- Migrates your existing
cypress.json
configuration to a newcypress.config.ts
configuration file.- The
pluginsFile
option has been replaced forsetupNodeEvents
. We will import the file and add it to thesetupNodeEvents
config option. Double-check your plugins are working correctly.
- The
- Rename all test files from
.spec.ts
to.cy.ts
- Rename the
support/index.ts
tosupport/e2e.ts
and update any associated imports - Rename the
integrations
folder to thee2e
folder
Keeping a root cypress.json
file, will cause issues with Cypress trying to load the project. Instead, you can create a root ts file and import it into each project's cypress config file to share values across projects.
We take the best effort to make this migration seamless, but there can be edge cases we didn't anticipate. So feel free to open an issue if you come across any problems.
You can also consult the official Cypress migration guide if you get stuck and want to manually migrate your projects.