Fixed a regression in 7.0.0 that caused the test runner not to check for updates. Fixes #15829.
The component testing spec list search input no longer throws an exception when hitting Enter. Addressed in #15833.
The preferred file opener modal no longer appears behind the command log. Addressed in #15831.
Cypress no longer crashes in certain circumstances when running in Docker without --ipc=host. Fixes #15814 and #350.
Node.js warnings are no longer incorrectly printed to stderr in production builds of Cypress. Addressed in #15817.
Cypress no longer prints a warning to stdout when the video cannot be found after a run. Addressed in #15828.
A warning is no longer displayed when running a TypeScript spec without a tsconfig.json file present. Addressed in #15828.
Misc:
The "New Spec File" in the Desktop GUI has a less pronounced style. Addressed in #15835.
7.0.0
Released 04/05/2021
Summary:
🎉 Introducing the Cypress Component Test Runner - now in alpha. Today's release includes a brand new test runner designed to replace your Node-based component tests. Our Component Test Runner tests your components in the browser, just like a user would. And, since it runs in the browser, you get to debug your components using your favorite developer tools. Read our Component Testing Guide for more details.
Breaking Changes:
Please read our Migration Guide which explains the changes in more detail and how to change your code to migrate to Cypress 7.0.
Request handlers supplied to cy.intercept() are now matched starting with the most recently defined request interceptor. This allows users to override request handlers by calling cy.intercept() again. This matches the previous behavior that was default in cy.route(). Addresses #9302.
cy.intercept() now automatically parses more JSON MIME types, including 'application/vnd.api+json'. You can now remove JSON.parse(req.body) or JSON.parse(res.body) from some tests that previously required it. Addresses #14763.
Falsy values (with the exception of undefined) supplied as the body of a StaticResponse to cy.intercept() will now be JSONified and sent as the body. Previously, an empty string was sent instead. Addresses #15234 and #14205.
The matchUrlAgainstPathRouteMatcher property has been removed from cy.intercept().
The "substring match" from cy.intercept() URL matching has been removed. Previously, a URL would match if it contained the supplied string anywhere. Now, the URL (including querystring) only matches if it is an equality match or a minimatch.
The delay option for StaticResponses used with cy.intercept() has been removed. Please go back to using the delayMS option. Addresses #15255.
cy.route2() was previously aliased to cy.intercept(). Now the alias cy.route2() has been removed. Please update usage of cy.route2() to cy.intercept(). Addressed in #14709.
Component tests have been migrated to use a dedicated test runner and are bundled differently. See the Migration Guide for full examples on how to migrate. Addressed in #14479.
Component tests will not be executed when running cypress open or cypress run. Now, they need to be executed by running cypress open-ct or cypress run-ct. Addressed in #15701.
experimentalComponentTesting must be removed from yoru configuration file, cypress.json by default, or it will throw an error. Addressed in #15701.
The file:preprocessor event is no longer used to compile component tests. Now, a dev-server:start event must be registered.
Cypress now catches uncaught errors and fails the test even if the application under test has defined window.onerror. Addresses #8802.
Cypress now fails tests if there is an unhandled promise rejection in the application under test. Unhandled rejections will trigger the uncaught:exception event with the promise as the third argument. Addresses #243.
Cypress now throws an error if the application under test redirects more than 20 times. The number of times allowed to redirect is configurable via the redirectionLimit config. Addresses #14445.
The default preprocessor now targets a more modern version of ECMAScript. Addressed in #15274.
We now enable contextIsolation by default in the Electron browser. You can override this option if needed within the before:browser:launch API. Addressed in #15493.
Cypress.moment() has been removed. Please migrate to a different datetime formatter. See our recipe for example replacements. Addresses #8714.
The bundled Node.js version was upgraded from 12.18.3 to 14.16.0. This could change the behavior of code within the pluginsFile when using the bundled Node.js version of Cypress. Addressed in #15292.
Installing Cypress on your system now requires Node.js 12+. Addresses #9545.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps cypress from 6.8.0 to 7.0.1.
Release notes
Sourced from cypress's releases.
... (truncated)
Commits
61c120d
release 7.0.1 [skip ci]c0cd9f7
fix: Prevent a couple warnings from being displayed in stdout (#15828)065446f
fix: make "New Spec File" a button link style (#15835)d32076b
chore(component-testing): Show a hint if no specs were found in the list (#15...f888625
fix(runner-ct): fixing an exception and styling (#15833)702a152
fix: make the z-index of file opener over the reporter (#15831)3ddd852
fix: checked-for-updates event properly sends, and update banner is displayed...1e06022
fix: pass disable-dev-shm-usage flag to Electron (#15825)1a0893f
Merge branch 'master' into develop519b29c
fix(component-testing): Correctly specify@cypress/webpack-dev-server
peerDep...Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)