💥 Breaking Change
- Drop Node.js v12, v13 and v14 Support
- Transition code base from CommonJS to ESM
- This should not affect WebdriverIO users as you can use the testrunner, as well as
webdriver
,devtools
andwebdriverio
NPM packages in a CJS environment - We still mark this as breaking as we can't gurantee that all (untested) functionality will behave the same due to all rewrites done to the code base
- This should not affect WebdriverIO users as you can use the testrunner, as well as
- Removal of
@wdio/sync
which we deprecated in v7 - WebdriverIO types are now accessible through
@wdio/globals/types
instead ofwebdriverio/async
- Removal of
browser.config
- Please use
browser.options
instead - This will stop support assigning custom properties to the
wdio.conf.js
which we disadvise you to do, instead either assign it as part of a custom capability, e.g.custom:options
(note the:
in it, read more on custom capabilities in the WebDriver spec) or via `@wdio/shared-store-service
- Please use
- discontinued support for
tsconfig-paths
🚀 New Feature
- New runner plugin called
@wdio/browser-runner
allows you to run unit and component tests in the browser - Access WebdriverIO primitives through the new
@wdio/globals
package - New Action API
🏠 Internal
- Update required Node.js version for development to
v18.12.1
- Migrate unit tests from Jest to Vitest
💅 Polish
- Improvements on configuration wizard and
create-wdio
- It now detects whether your projects uses ESM or CJS and creates example files accordingly
- It now finds the project root and sets up the project relative to it
- Adds support for browser runner selection
📝 Documentation
- Little design tweaks to the hero section on the main page
- Added new section for component testing
- Added new API section for browser, element, mock objects, modules and environment variables