chore(deps): update dependency testcafe to v3 #286
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
2.2.0
->3.7.1
Release Notes
DevExpress/testcafe (testcafe)
v3.7.1
Compare Source
Bug Fixes
v3.7.0
Compare Source
The TestCafe v3.7.0 update includes the capability to use
Metadata
as an interface,esm
configuration file option, and a number of bug fixes.meta-readmore
Declare Metadata Interface
Earlier versions of TestCafe supported
Metadata
as a type. In TestCafe v3.7.0 and higher, you should declareMetadata
as an interface.New Configuration File Option: esm
Earlier versions of TestCafe supported the ESM Module from the CLI only. In TestCafe v3.7.0 and higher, you can use the esm configuration file option. Note that this option only works with Node.js 18.19-18.xx, and 20.8.0 and up.
Bug Fixes
WebSocket connection closed
error in Chrome v130 (#8286).unknown
(#8228).WebSocket connection closed
error occurs while running TestCafe in Chrome v127. The updated version includes the--disable-search-engine-choice-screen
flag (#8240).leaveElement
method call causes an error when theprevElement
object is removed from the DOM (#8264).v3.6.2
Compare Source
Bug Fixes
v3.6.1
Compare Source
Bug Fixes
resizeWindow
method if you maximize the target window first. (#8157)v3.6.0
Compare Source
The TestCafe v3.6.0 update includes two minor changes and a number of bug fixes.
v3.5.0
Compare Source
TestCafe v3.5.0 includes multiple enhancements and bug fixes. Pass Selector queries to the Visual Selector Debugger, explore new ways to specify screenshot path patterns, and use a new experimental flag to run multi-window tests with native automation!
meta-readmore
Pass Selector queries to the Visual Selector Debugger
When you pass a Selector query to the t.debug() method, TestCafe uses the query to populate the input field of the Visual Selector Debugger. The debugger highlights page elements that match the query.
Use a custom path pattern for screenshots of failed tests
The
pathPatternOnFails
screenshot option allows TestCafe users to define a separate set of naming rules for screenshots taken on test failure. You can store these screenshots in a different folder, or add a common, recognizable element to their filenames. You can use this option on its own, or in conjunction with thepathPattern
property.Specify a path pattern for individual screenshots
Use the
pathPattern
option of the t.takeScreenshot action to specify a custom naming pattern for an individual screenshot:(Experimental) Run multi-window tests with native automation
TestCafe v2.5.0 was the first version of TestCafe to include native automation --- the capability to automate Chromium-based browsers with the native Chrome Debugging Protocol. This approach offers greater test stability and speed, but has a fair share of limitations. One of them is its incompatibility with multi-window tests.
TestCafe v3.5.0 offers an experimental solution for this issue --- the --experimental-multiple-windows CLI flag. If you enable this flag, you can run multi-window tests with the native automation engine.
The
--experimental-multiple-windows
mode does not support tests that include the following:Please do not use the
--experimental-multiple-windows
flag in production or for business-critical tasks.Bug Fixes
fixture.before
hook (#6999).Fixture.disableConcurrency
method does not disable concurrent test execution (8087).required
attribute (#8079).v3.4.0
Compare Source
TestCafe v3.4.0 introduces relative Role URLs, the ability to disable concurrency on a per-fixture basis, as well as other improvements and bug fixes.
meta-readmore
Enhancements
Relative Role URLs
Earlier versions of TestCafe did not support relative URLs for Role log-in pages. In TestCafe v3.4.0 and higher, if you set the baseUrl configuration file parameter or the --base-url CLI option, you can set a relative URL for a Role log-in page:
Disable concurrency on a per-fixture basis
Concurrent test execution is not suitable for tests that can only run in a certain order. To ignore the global concurrency setting for a particular fixture, use the disableConcurrency fixture method.
Development Mode Enhancements
When you debug code inside a browser, the browser can appear unresponsive. Earlier versions of TestCafe automatically relaunched unresponsive browsers, including browsers that were used for debugging.
TestCafe v3.4.0 does not relaunch unresponsive browsers if you enter development mode.
Debug Panel Enhancements
The debug panel includes a new "Hide Picker" button. Click this button to disable the Selector Debugger and hide the Selector input field.
Bug Fixes
srcset
attribute declarations (testcafe-hammerhead#2958).ngx-formly
form (#7758).v3.3.0
Compare Source
TestCafe v3.3.0 includes important bug fixes and quality of life improvements.
Bug Fixes
--disable-multiple-windows
option when you interact with a link that points to "target=_blank", or open a new window with thewindow.open
method (#7916).userProfile
option (#7925).v3.2.0
Compare Source
TestCafe v3.2.0 allows you to check whether TestCafe uses native automation to control the browser.
Check your native automation status
The
nativeAutomation
property of the t.browser object indicates whether TestCafe uses native automation to control the browser. The property's value istrue
when TestCafe uses native automation andfalse
when TestCafe uses the Hammerhead proxy.You can check the browser's native automation status before you start the test:
Bug Fixes
error-stack-parser
package that contains a vulnerable dependency (PR #7919 by @sethidden).v3.1.0
Compare Source
TestCafe v3.1.0 introduces two enhancements:
t.setNativeDialogHandler
method.Respond to geolocation requests
Use the
t.setNativeDialogHandler
method to respond togeolocation
requests.Error
type object to Block geolocation requests.success
callback of the getCurrentPosition method.Reference the framework's version in tests and test reports
Earlier versions of TestCafe could output the framework's version number to the console:
TestCafe 3.1.0 and up allows you to access the framework's version number in test code:
To access the framework's version number in your custom reporter, reference the first argument (
version
) of theinit
method:Bug fixes
setFileUpload
method does not work (#7832).t.click
action fails if the event handler accounts for pointer input pressure (#7867).httpOnly
flag when you use thet.setCookies
method (#7793).v3.0.1
Compare Source
Bug fixes
v3.0.0
Compare Source
This major update includes two breaking changes:
Other changes include:
print
dialog with the native dialog handler.Native automation
TestCafe v2.5.0 introduced an experimental mode that allows users to automate Chromium-based browsers, such as Google Chrome and Microsoft Edge, with the native CDP protocol. TestCafe v3.0.0 and up enables this capability out of the box.
Native automation increases test quality, stability, and speed.
Access Test and Fixture data in hooks
You can now access the following data in fixture hooks (
fixture.before
,fixture.after
) :Test hooks (
fixture.beforeEach
,fixture.afterEach
,test.before
,test.after
) can access fixture data and the following test data:Read the Hooks guide for more information.
Dismiss the print dialog
You can now use the t.setNativeDialogHandler method to dismiss the print dialog.
Removed: Internet Explorer support
TestCafe v3.0.0 removes support for Internet Explorer 11, six months after the browser's official retirement. The browser came out more than 9 years ago, and has a worldwide market of less than 0.5%. It is survived by Edge, a popular Chromium-based browser that ships with modern versions of Windows.
Bug fixes
v2.6.2
Compare Source
TestCafe v2.6.2 introduces a number of bug fixes.
Bug fixes
pressKey('space')
action doesn't affect checkbox status in Firefox (#6969).v2.6.1
Compare Source
TestCafe v2.6.1 retires Experimental Debug mode, and introduces a number of important bug fixes.
Removed: Experimental debug mode
TestCafe v1.18.0 introduced Experimental Debug mode --- a way to debug Selectors and Client Functions in the text editor. TestCafe v2.4.0 shipped with the Visual Selector Debugger, which allows users to troubleshoot Selector queries directly in the browser.
The two capabilities serve the same purpose, but the Visual Selector Debugger is more user-friendly. As such, beginning with TestCafe v2.6.1, the framework no longer includes Experimental Debug mode. Thank you to all the TestCafe users who tried out the capability.
Bug fixes
v2.6.0
Compare Source
TestCafe v2.6.0 introduces two enhancements: a new hook that allows users to modify reporter output, and support for JavaScript configuration files with the
.cjs
extension.New reporter hook
The onBeforeWrite hook allows you to modify the output of a reporter.
If you want your test reports to include custom content, you can create a custom reporter from scratch. However, this approach takes time and effort. Use the
onBeforeWrite
hook if you want to make minor changes to the output of an existing reporter.Define an
onBeforeWrite
hook in a JavaScript configuration file. The following hook adds the duration in milliseconds to every test entry in the report:CJS support
If you run TestCafe v2.6.0 and higher, you can now use a configuration file with the
.cjs
file extension. TestCafe detects the.testcaferc.cjs
file on startup, alongside its.js
and.json
counterparts.TestCafe configuration files only support CommonJS syntax. Meanwhile, modern JavaScript tools often default to ESM syntax. If a JavaScript project is of type
module
, Node.js expects the project's.js
files to contain ESM syntax.Use the
.cjs
configuration file extension to let Node.js know that the file contains CommonJS syntax.Many thanks to the TestCafe contributor Damien Guérin (@gigaga) for the implementation of this capability.
Bug fixes
t.skipJsErrors
method without arguments, TestCafe passes afalse
value to the method. This behavior is inconsistent with similar methods of a greater scope ---test.skipJsErrors
andfixture.skipJsErrors
(#7648).Error
(#7627).t.pressKey
action in Mozilla Firefox. Attempts to press the "backspace" key and the "tab" key, among others, may fail. (#7623)t.request
method. (#7609)v2.5.0
Compare Source
TestCafe v2.5.0 introduces three major enhancements:
t.report
method passes custom data to the test reporter.--native-automation
flag enables TestCafe to automate all Chromium-based browsers with the native CDP protocol.--esm
flag allows users to import ESM modules in test files.t.report
Include the t.report() method in your test to pass custom data to the reporter.
Specify arguments of any type (string, array, Object, etc). Separate arguments with a comma:
The default
spec
reporter displays custom data after test completion, once for each browser that runs the test.CDP Automation: Now Stable
TestCafe v2.2.0 introduced an experimental proxyless mode that automated Google Chrome with the native CDP protocol.
For the v2.5.0 release, the TestCafe team addressed most issues that our users discovered when the capability was "experimental", and gave it a new name --- Native Automation mode.
Unlike its predecessor, the Native Automation mode supports all Chromium-based browsers, including Microsoft Edge. Enable the
nativeAutomation
option in the command line interface, the configuration file, or the runner.run() function to try this capability.ESM Module Support: Now Stable
TestCafe v2.5.0 drops the
experimental
prefix from the--esm
CLI flag. Enable the--esm
flag to import modules that do not support CommonJS.v2.4.0
Compare Source
TestCafe v2.4.0 introduces the Visual Selector Debugger. You can now create and debug Selector queries in the browser window.
Visual Selector Debugger
TestCafe v2.4.0 displays the Visual Selector Debugger panel when you activate Debug Mode. Use the panel to debug Selector queries from your test, or generate new Selector queries.
If a Selector query causes your test to fail, add the t.debug() command after the last successful action, and launch the test.
When the test reaches the breakpoint, the window that runs the test displays the Selector Debugger panel. Copy the failing Selector query from test code to the Selector Debugger input field.
To interactively generate a Selector query, click the Pick button, and select the target element on the page.
For more information on the panel, its capabilities, and limitations, read the Visual Selector Debugger Guide.
Bug Fixes
v2.3.1
Compare Source
TestCafe v2.3.1 introduces a number of bug fixes.
Bug Fixes
test.meta
method precedes test code (#7482).v2.3.0
Compare Source
TestCafe v2.3.0 introduces
create-testcafe
--- an interactive tool that allows you to initialize a new TestCafe project in seconds. The update also includes experimental ECMAScript module support and a number of bug fixes.create-testcafe
Use the create-testcafe tool to initialize a new TestCafe project, or add TestCafe to an existing Node.js application.
Execute the following command to launch
create-testcafe
:The
create-testcafe
tool allows you to perform the following actions with a single command:Read the TestCafe Setup Wizard guide for more information on the create-testcafe tool.
Experimental: ECMAScript module support
TestCafe has always used CommonJS syntax for module imports:
An increasing number of Node.JS packages abandon CommonJS in favour of ECMAScript module syntax:
Enable the
--experimental-esm
CLI flag to import modules that do not support CommonJS. Note: tests with ECMASCript module syntax are subject to additional requirements.Additional Reuqirements
To run tests with ECMAScript
import
statements, make sure that your project meets at least one of the following requirements:type
key in your project's package.json file ismodule
..mjs
extension.Bug Fixes
_blank
target (#6926).dns.setDefaultResultOrder
method in older Node.js environments (#7447).babel-plugin-module-resolver
package (#7456).Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.