All Versions
51
Latest Version
Avg Release Cycle
16 days
Latest Release
1597 days ago
Changelog History
Page 3
Changelog History
Page 3
-
v4.12.1 Changes
August 05, 2020๐ Released 8/5/2020
๐ Bugfixes:
- โ
The error
Cannot set property 'err' of undefined
will no longer incorrectly throw when rerunning tests in the Test Runner. Fixes #7874. - โ
Skipping the last test before a nested suite with a
before
hook will now correctly run the tests in the suite following the skipped test. Fixes #8086.
โก๏ธ Dependency Updates:
- โ
The error
-
v4.12.0 Changes
August 03, 2020๐ Released 8/3/2020
๐ Features:
- ๐ง Now you can control whether screenshots are automatically taken on test failure during
cypress run
by setting screenshotOnRunFailure in your configuration. Addresses #5029. - ๐ The
pluginsFile
now has access to a readonlyversion
property within theconfig
object that returns the current Cypress version being run. This will allow plugins to better target specific Cypress versions. Addresses #6352. - โ
During
cypress open
, you can now run a subset of all specs by entering a text search filter and clicking 'Run n tests'. Addresses #6581.
๐ Bugfixes:
- ๐
position: fixed
elements that have a parent withpointer-events: none
will now correctly evaluate as visible. Fixes #6675. - ๐ Applications using custom elements will no longer trigger infinite XHR request loops. Fixes #1068.
- ๐ When snapshotting the DOM, Cypress no longer causes
attributeChangedCallback
to be triggered on custom elements. Fixes #7187. - ๐ Spec files containing
+
characters now properly run in Cypress. Fixes #5909. - ๐ When using the
fx
shortcut incy.route()
, an error is now thrown when the fixture file cannot be found. Fixes #7818. - ๐ Cypress no longer thrown
Cannot read property '__error' of null
error when passing a file containingnull
content tocy.fixture()
. Fixes #8010. - ๐ Values containing exponential operators passed to
--env
via the command line are now properly read. Fixes #6891. - โ The "Open in IDE" button no longer disappears from hooks when the tests are manually rerun. Fixes #8094.
- ๐ When
experimentalSourceRewriting
is enabled, AST rewriting will no longer return an output before the body is done being written. This would happen when the response body was too large and the response would be sent while the body was still being modified. Fixes #8043. - ๐ When using
.type()
, Cypress now properly types into an input within an iframe that auto focuses the input. Fixes #8111.
Misc:
- ๐ Dependencies for our
cypress
npm package are no longer pinned to a specific version. This allows the use ofnpm audit fix
to fix security vulnerabilities without needing a patch release from Cypress. Addresses #8046. - We now collect environment variables for AWS CodeBuild when recording to the Dashboard. Addressed #8101.
- Types inside Module API are now accessible via the
CypressCommandLine
namespace. Addresses #7309. - We added more type definitions for the
.should()
command. Addresses #5573. - Cookie command's
expiry
property type is now a Number instead of a String. Addresses #8144. - โ There are some minor visual improvements to the Test Runner's Command Log when hovering, focusing and clicking on hook titles and pending tests. Addressed in #8153.
โก๏ธ Dependency Updates:
- ๐ง Now you can control whether screenshots are automatically taken on test failure during
-
v4.11.0 Changes
July 21, 2020๐ Released 7/21/2020
๐ Features:
- You can now pass an
ensureScrollability: false
option to.scrollTo()
to skip checking whether the element is scrollable. Addresses #1924. - ๐
cy.clock()
now accepts Dates as well as a Number for now. Fixes #7786.
๐ Bugfixes:
- ๐ Running multiple specs within Firefox during
cypress run
on Windows will no longer fail trying to make a connection to the browser. Fixes #6392. - ๐ Cypress will no longer throw a
Cannot read property 'isAttached' of undefined
error duringcypress run
on Firefox versions >= 75. Fixes #6813. - ๐ Fixed an issue where Cypress tests in Chromium-family browsers could randomly fail with the error "WebSocket is already in CLOSING or CLOSED state." Fixes #7180.
- ๐ Taking a screenshot of an element that changes height upon scroll will no longer throw an
invalid for option "size"
error. Fixes #6099. - ๐ง Setting
viewportHeight
orviewportWidth
from within the test configuration now properly changes the viewport size for the duration of the suite or test. - ๐ Setting deep objects and arrays on
config
within thepluginsFile
now sets the values correctly. Fixes #7959. - ๐ The progress bar for
cy.wait()
now reflects the correctrequestTimeout
andresponseTimeout
of the command. Fixes #7881. - โ The command's progress bar will not longer restart when its parent test is collapsed in the Command Log. Fixes #7912.
- Key value pairs sent to
ELECTRON_EXTRA_LAUNCH_ARGS
askey=value
will now be properly read in. Fixes #7994. - โ
Stubbed responses responding with an empty string to
cy.route()
now correctly display as 'xhr stub' in the Test Runner's Command Log. Fixes #8018. - โ Quickly reclicking the "Run All Tests" button in the Test Runners' Command Log will no longer throw errors about undefined properties and the tests will no longer hang. Fixes #7968.
Misc:
- ๐ The error messages thrown from
pluginsFile
andsupportFile
now mention that.ts
extensions are supported. Addresses #7940. - ๐ The style when focusing on tests in the Command Log has been updated. Addresses #7855.
โก๏ธ Dependency Updates:
- โฌ๏ธ Upgraded
@benmalka/foxdriver
from0.4.0
to0.4.1
. Addressed in #8040. - โฌ๏ธ Upgraded
firefox-profile
from1.3.1
to2.0.0
. Addressed in #8000. - โฌ๏ธ Upgraded
fix-path
from2.1.0
to3.0.0
. Addressed in #8028. - โฌ๏ธ Upgraded
human-interval
from0.1.6
to1.0.0
. Addressed in #8031. - โฌ๏ธ Upgraded
lodash
from4.17.15
to4.17.19
. Addressed in #7954. - โฌ๏ธ Upgraded
plist
from2.1.0
to3.0.1
. Addressed in #8045. - โฌ๏ธ Upgraded
proxy-from-env
from1.0.0
to1.1.0
. Addressed in #7900. - โฌ๏ธ Upgraded
resolve
from1.13.1
to1.17.0
. Addressed in #7989. - โฌ๏ธ Upgraded
systeminformation
from4.21.1
to4.26.9
. Addressed in #7975. - โฌ๏ธ Upgraded
uuid
from3.3.2
to8.2.0
. Addressed in #7976, #8002, and #8011.
- You can now pass an
-
v4.10.0 Changes
July 07, 2020๐ Released 7/7/2020
๐ Features:
- You can open a
before
,beforeEach
,after
, andafterEach
hook definition in your IDE from the Test Runner's Command Log by clicking the Open in IDE button. Addresses #7793. - โ
before
,beforeEach
,after
, andafterEach
hook definitions now display separately in the Test Runner's Command Log when defined in separate hook definitions. Addresses #7779. - โ You can now open a spec file directly from the Tests tab in the Test Runner by clicking the Open in IDE button. Addresses #7713
๐ Bugfixes:
- 0๏ธโฃ HTTP requests taking longer than the default
responseTimeout
will no longer be prematurely canceled by the Cypress proxy layer. Fixes #6426. - ๐ Using Cypress commands to traverse the DOM on an application with a global
parent
variable will no longer throw Illegal Invocation errors. Fixes #6412. - ๐ When
experimentalShadowDomSupport
is enabled, using.type()
on an input in the Shadow DOM will not result in an error. Fixes #7741. - ๐ When
experimentalShadowDomSupport
is enabled, checking for visibility on a shadow dom host element will no longer hang if the host element was the foremost element and had an ancestor with fixed position. Fixes #7893. - ๐ Debug logs from the
@benmalka/foxdriver
module will no longer appear if anyDEBUG
environment variable was set. Fixed #7723.
Misc:
โก๏ธ Dependency Updates:
- โฌ๏ธ Upgraded
recast
from0.18.8
to0.19.1
. Addressed in #7898.
- You can open a
-
v4.9.0 Changes
June 23, 2020๐ Released 6/23/2020
๐ Features:
- โ An animated progress bar now displays on every command in the Command Log indicating how long the command has left to run before reaching its command timeout. Addresses #7642.
- ๐ง There is now an
experimentalFetchPolyfill
configuration option. When this option istrue
, Cypress will automatically replacewindow.fetch
with a polyfill that Cypress can spy on and stub. Addresses #7710. - You can now pass a
--quiet
flag tocypress run
to silence any Cypress specific output from stdout. Addresses #7714.
๐ Bugfixes:
cy.wait()
now correctly resolves when waiting for XHR requests that contain resource-like text in the XHR's query params or hash (like.js
, .html
,.css
). #7280.- โ We fixed a regression in 4.6.0 where errors thrown from the application under test as strings would not be correctly handled. Fixes #7590.
- ๐ We fixed a regression in 4.8.0 where
.click()
would hang if the subject had a shadow root andexperimentalShadowDomSupport
was not enabled. Fixes #7679. - ๐ We fixed a regression in 4.6.0 so that
.should('have.value')
now properly asserts against<progress>
,<meter>
or<li>
element's values. Fixes #7603. - ๐ Cypress no longer responds with 413 responses during a recorded
cypress run
when the stdout is too large. Fixes #7548. - โ We fixed an issue where Cypress could exit successfully even with failing tests when launched in global mode. Fixes #7755.
- โ
Assertion logs now properly display as parent commands in the Command Log regardless of what is in the
beforeEach
hook. Fixes #7731. - ๐ When
experimentalShadowDomSupport
is enabled, querying shadow dom in certain situations will no longer cause the errorCannot read property 'length' of undefined
duringcypress run
. Fixes #7676. - โ Highlighting of elements upon hover of a command in the Command Log are now visible when targeting absolute positioned elements. Fixes #7762.
- ๐
cypress run
will no longer crash when provided an empty string to the--project
flag. Fixes #7743.
Misc:
- โ There is now a loading state to indicated when tests are loading in the Command Log. Addresses #7700.
- โก๏ธ The type definitions for
fixturesFolder
,pluginsFile
,screenshotsFolders
andvideoCompression
have been updated to allowfalse
TypeScript types. Addresses #7654. - The type definitions for
cy.wait(ms)
now correctly yield the type of the previous subject. Addresses #7682. - The type definitions now allow for the 'key' keyword when chaining off 'any' or 'all' assertion chainers. Addresses #7665.
โก๏ธ Dependency Updates:
- โฌ๏ธ Upgraded
arch
from2.1.1
to2.1.2
. Addressed in #7672. - โฌ๏ธ Upgraded
eventemitter2
from4.1.2
to6.4.2
. Addressed in #7705 and #7707. - โฌ๏ธ Upgraded
getos
from3.1.1
to3.2.1
. Addressed in #7685. - โฌ๏ธ Upgraded
is-installed-globally
from0.1.0
to0.3.2
. Addressed in #7703. - โฌ๏ธ Upgraded
jimp
from0.12.0
to0.13.0
. Addressed in #7618. - โฌ๏ธ Upgraded
moment
from2.24.0
to2.26.0
. Addressed in #7718. - โฌ๏ธ Upgraded
signal-exit
from3.0.2
to3.0.3
. Addressed in #7738.
-
v4.8.0 Changes
June 08, 2020๐ Released 6/8/2020
๐ Features:
- ๐ง You can now apply certain test configuration for the duration of a suite or test by passing a configuration object to the test or suite as the second argument. Addresses #7167.
- ๐ป
Cypress.isBrowser()
has been expanded to allow for new matcher arguments to assist in filtering matching browsers. Addresses #7168. - โ We now display the currently running file at the top of the Test Runner's Command Log. That file can be opened in your preferred file opener by clicking the file. Addresses #7506.
- ๐ We added experimental shadow DOM support through the
experimentalShadowDomSupport
option. See the Experiments page for more information. Addresses #144.
๐ Bugfixes:
- ๐ Upon domain navigation,
before
andafter
hooks defined in completed suites no longer erroneously rerun. Fixes #1987. - โ
Errors thrown within root level
after
hooks now correctly display in the Test Runner's Command Log. Fixes #2296. - ๐ We fixed a regression in 4.6.0 where an XHR response without a body would cause Cypress to throw
Cannot read property '__error' of null
. Fixes #7518. - ๐ We fixed a regression in 4.6.0 where using
cy.visit()
to an authenticated URL would error withRequest cannot be constructed from a URL that includes credentials: /__cypress/runner/./wasm/mappings.wasm
Fixes #7481. - ๐ We now properly load code from the
pluginsFile
orsupportFile
when they are TypeScript files. Fixes #7459. - ๐ utf-8 characters now properly display within error code frames. Fixes #7507.
- ๐ Errors thrown in a
cy.on('fail', fn)
fail handler now display a stack trace and code frame pointing to the origin of the error. Fixes #7512. - ๐
.click()
now properly clicks on wrapped inline elements when the first child element in the parent element has no width or height. Fixes #7434 and #7012. - ๐
cy.wrap()
now properly respects thetimeout
option. It also better handles situations when passed a promise that never resolves. Fixes #5980. - โ
When
experimentalComponentTesting
is enabled, Cypress will no longer exit with SIGABRT in certain situations. Fixes #7572. - โ We fixed a regression in 3.8.0 where the "Tests" button in the Test Runner wouldn't take you back to the tests list in all browsers. Fixes #5948.
- โ
Using the
S
shortcut during.pause()
no longer does anything. This prevents the Test Runner from getting into a 'stuck' state. Fixes #6867.
Misc:
- โก๏ธ The design of errors and some iconography displayed in the Test Runner's Command Log have been updated. Addresses #7499, #7542 and #7563.
- โ The commands in the Test Runner's Command Log now display in the same casing as the original command. Addresses #5773.
- ๐ The navigation links in the Test Runner now display the correct CSS styles when focused. Addresses #7491.
Cypress.config()
now has TypeScript types for thetaskTimeout
option. Addresses #7531.- โก๏ธ TypeScript types for
cy.screenshot()
options andCypress.log()
have been updated to be more accurate. Addresses #7445. - TypeScript types for
Cypress.automation
have been added. Addresses #7519. - ๐ป We now display a more accurate error message when passing a browser to the
--browser
flag that is not supported by Cypress. Addresses #6979. - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #2690 in #7588 and #7591.
โก๏ธ Dependency Updates:
-
v4.7.0 Changes
May 26, 2020๐ Released 5/26/2020
๐ Features:
- 0๏ธโฃ
cy.request()
now supports anencoding
option that can be used to set the encoding of the response body, defaulting toutf-8
. Addresses #2029 and #3576.
๐ Bugfixes:
- โ We fixed a regression in 4.6.0 where the address bar of the application under test would disappear when scrolling commands ran and the application under test would visually shift after taking screenshots. Fixes #7443 and #7466.
- โ We fixed a regression where test runs could hang when loading spec files with source maps. Fixes #7464.
Misc:
- ๐ We now display a more descriptive error message when the plugins file does not export a function. Addresses #6611.
- 0๏ธโฃ
-
v4.6.0 Changes
May 20, 2020๐ Released 5/20/2020
๐ Features:
- โ Errors in the Test Runner now display a code frame to preview where the failure occurred with the relevant file, line number, and column number highlighted. Clicking on the file link will open the file in your preferred file opener and highlight the line and column in editors that support it. Addresses #3762.
- โฌ๏ธ Cypress now utilizes source maps to enhance the error experience. Stack traces are translated so that your source files are shown instead of the generated file that is loaded by the browser. Cypress will include an inline source map in your spec file. If you modify the preprocessor, ensure that inline source maps are enabled to get the same experience. Users of
@cypress/webpack-preprocessor
should upgrade to v5.4.1 or later of the package which will correctly inline source maps. Addresses #881, #1761 and #3966. - ๐ง Cypress now enables AST-based JS/HTML rewriting when setting the
experimentalSourceRewriting
configuration option totrue
. Addresses #5273. - Number arguments passed to
have.text
,have.id
,have.data
,have.value
, andhave.attr
assertions chainers are now automatically cast to strings for comparison. Addresses #7314.
๐ Bugfixes:
- 0๏ธโฃ Default TypeScript options are now set to
module: commonJS
which Node.js and the browser expect. This fixes a situation where setting a different module in atsconfig.json
would cause errors to throw if you hadexport
,import
orasync
keywords in your code. Fixes #7005, #7011, #7043, and #7151. - ๐ When
experimentalSourceRewriting
is enabled, settinglocation
orlocation.href
to a relative href, or usinglocation.replace
orlocation.assign
with a relative href will no longer navigate the AUT to the wrong URL. Fixes #3975 and #3994. - ๐ When
experimentalSourceRewriting
is enabled, the use ofwindow.top
andwindow.parent
will no longer cause the AUT to break out of the Cypress iframe. Fixes #5271 and #1467. - ๐ When
experimentalSourceRewriting
is enabled, calls towindow.frames
,window.parent.frames
, and otherframes
will no longer point to the wrong reference after being proxied through Cypress. Fixes #2664. - ๐ When
experimentalSourceRewriting
is enabled, scripts using theintegrity
attribute for sub-resource integrity (SRI) will now load after being proxied through Cypress. Fixes #2393. - ๐ When
experimentalSourceRewriting
is enabled, the use ofdocument.location
to set the URL will no longer navigate the AUT to the wrong URL. Fixes #7402. - ๐ Type definitions will no longer conflict when running Cypress in a project with Jest. Fixes #3536.
- ๐ We increased the timeout for launching Firefox from 2.5 seconds to 50 seconds. Previously, users hitting this limit would encounter a "cannot open socket" error; now, the error will be wrapped. Fixes #7159.
- ๐
.click
will now click in the correct coordinates when either x or y coordinate options are zero. Fixes #7319. - ๐ป Cypress no longer displays
onError is not a function
when a browser can't connect. Fixes #7217. - You can now pass the
force: true
option to.select()
to select options within a disabled<select>
. Addresses #107. - ๐ We now throw an error when attempting to
.select()
an<option>
within a disabled<optgroup>
. Fixes #7226. - ๐ We fixed a regression in 4.3.0 where the message output during errors were not formatted correctly. Fixes #6924.
- Using
Cypress._.capitalize
now correctly behaves the same as Lodash's capitalize method. Fixes #7222. - โ
When
experimentalComponentTesting
is enabled, clicking on a component spec now watches the correct file without assuming it is an integration file. Fixes #7244. - ๐ Firefox video recording no longer crashes Cypress when running very short spec files. Fixes #6408.
- ๐ Applications containing a DOM element with an id attribute containing 'jquery' will no longer throw an error during
cy.visit()
. Fixes #6193. - โ Long errors generated when compiling or bundling the test file are now horizontally scrollable. Fixes #6898.
Misc:
- โ Cypress no longer requires write access to the root of the project, it instead will display a warning when no write access is given. Addresses #1281.
- โฑ We increased the timeout for launching Chrome from 20 seconds to 50 seconds. Addressed in #7372.
- ๐ We increased the timeout for macOS or Linux to exit from a
--version
command when looking for available browsers from 5 seconds to 30 seconds. Addressed in #7366. - ๐ป We improved error handling when Cypress launches Chromium-family browsers. Addresses #6518.
- We now export
Cypress.ConfigOptions
types as a partial of the full options interface. Addresses #7238. - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #2690 in #7162, #7216, #7227, #7320, #7232, and #7345.
โก๏ธ Dependency Updates:
- โฌ๏ธ Upgraded
@cypress/browserify-preprocessor
from2.2.2
to2.2.3
. Addressed in #7291. - โฌ๏ธ Upgraded
cookie-parser
from1.4.4
to1.4.5
. Addressed in #7389. - โฌ๏ธ Upgraded
cypress-multi-reporters
from1.2.4
to1.4.0
. Addressed in #7431. - โฌ๏ธ Upgraded
electron
from8.2.3
to8.3.0
. Addressed in #7236 and #7387. - โฌ๏ธ Upgraded
image-size
from0.7.4
to0.8.3
. Addressed in #7236. - โฌ๏ธ Upgraded
jimp
from0.9.3
to0.12.0
. Addressed in #7408. - โฌ๏ธ Upgraded
return-deep-diff
from0.3.0
to0.4.0
. Addressed in #7292.
-
v4.5.0 Changes
April 28, 2020๐ Released 4/28/2020
๐ Features:
- ๐ Cypress now supports the execution of component tests using framework-specific adaptors when setting the
experimentalComponentTesting
configuration option totrue
. For more details see the cypress-react-unit-test and cypress-vue-unit-test repos. Addresses #5922 and #6968.
๐ Bugfixes:
- ๐ Custom Mocha reporters will now correctly use the version of Mocha bundled with Cypress. Fixes #3537 and #6984.
- ๐ We better account for word boundaries in application scripts when
modifyObstructiveCode
istrue
. Fixes #7138. - ๐ Fixed an issue where iterators in TypeScript were not properly transpiled. Fixes #7098.
Misc:
- โก๏ธ The update window in the Test Runner now encourages yarn users to
yarn upgrade
Cypress instead ofyarn add
to help prevent installing 2 versions of Cypress when using yarn workspaces. Addressed in #7101. - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #2690 in #7031 and #7097.
โก๏ธ Dependency Updates:
- โฌ๏ธ Upgraded
electron
from8.2.0
to8.2.3
. Addressed in #7079.
- ๐ Cypress now supports the execution of component tests using framework-specific adaptors when setting the
-
v4.4.1 Changes
April 20, 2020๐ Released 4/20/2020
๐ Bugfixes:
- ๐ Cypress can now launch on systems where Chromium is installed via Snapcraft. Fixes #7020.
- ๐ We now check whether the
mouseup
event's target element is detached before issuing theclick
event during.click()
. Fixes #6923. - โ
We fixed a regression in 3.8.1 where the Test Runner could send an
undefined
organization ID during project setup when the default organization is preselected. Fixes #7013. - ๐ We fixed a regression in 4.4.0 that caused projects to include bundled TypeScript. Fixes #7036.
- ๐ Fixed an issue where sites that set
Feature-Policy: document-domain 'none'
headers would fail to load in Cypress. Fixes #6480.
Misc:
- โ We fixed some extra spacing displaying below the project nav in the Test Runner. Addresses #7023
- The typings for run results when using the Module API now indicate they can be
null
orundefined
. Addresses #6126. - We're continuing to make progress in converting our codebase from CoffeeScript to JavaScript. Addresses #2690 in #7004.