Tags:
- 💥 [Breaking Change]
- 👓 [Spec Compliancy]
- 🚀 [New Feature]
- 🐛 [Bug Fix]
- 📝 [Documentation]
- 🏠 [Internal]
- 💅 [Polish]
Note: Gaps between patch versions are faulty, broken or test releases.
See CHANGELOG - v4.
See CHANGELOG - v5.
See CHANGELOG - v6
wdio-junit-reporter
- #7525 feat(wdio-junit-reporter): allow to override className format (@Slashgear)
wdio-shared-store-service
- #7519 feat(shared-store-service): export set and get value globally (@Slashgear)
- #7529 7324 - added support for fragment identifiers (#) in 3rd party doc (@babusekaran)
- Antoine Caron (@Slashgear)
- Babu Sekaran (@babusekaran)
wdio-browserstack-service
,wdio-types
- #7507 fix status type in afterScenario hook of BS service (@christian-bromann)
webdriverio
- #7508 Ignore errors in releaseActions click command (@christian-bromann)
- Christian Bromann (@christian-bromann)
wdio-devtools-service
- #7019 Upgrade lighthouse dependencies and fix performance tests (@christian-bromann)
wdio-cli
- #7471 Check for tsconfig file and create if it doesn't exists for type script project (@praveendvd)
- #7487 Added boiler plate code for webdriverIO electronjs , winappdriver , mutiremote setups (@praveendvd)
- Christian Bromann (@christian-bromann)
- praveendvd (@praveendvd)
wdio-jasmine-framework
,wdio-types
,wdio-utils
- #7475 Fix before/afterHook parameters for Cucumber (@christian-bromann)
wdio-protocols
- #7472 Documentation update for webdriver protocol (@praveendvd)
wdio-allure-reporter
- #7420 updated documentation for accepted values for allure reporter > severity (@saranyaeaswaran)
- #7359 Fix broken iFrame e2e test (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Saranya Easwaran (@saranyaeaswaran)
- praveendvd (@praveendvd)
wdio-utils
- #7467 Allow sync assertions in async context (@christian-bromann)
- Christian Bromann (@christian-bromann)
wdio-protocols
- #7451 Allow to access Selenium v4 GraphQL data (@christian-bromann)
wdio-cli
,wdio-runner
,wdio-sauce-service
,wdio-types
- #7461 only upload log files with the same cid (@christian-bromann)
wdio-utils
- #7437 Detect Selenium v4 Server (@christian-bromann)
- #7425 Write migration guide from sync to async tests (@christian-bromann)
wdio-cli
,wdio-utils
- #7458 Bump expect-webdriverio to improve async jasmine execution (@christian-bromann)
- Christian Bromann (@christian-bromann)
devtools
,wdio-types
- #7422 Improve mobile emulation capabilities (@christian-bromann)
wdio-reporter
- #7421 Fix error diffing in Jasmine (@christian-bromann)
webdriver
- Christian Bromann (@christian-bromann)
- Jonathan Lipps (@jlipps)
wdio-utils
- #7313 Enable custom chain-able commands with async API (@christian-bromann)
wdio-runner
,wdio-shared-store-service
,webdriverio
- #7215 Only run stale element work around for safari browser (@christian-bromann)
- Christian Bromann (@christian-bromann)
wdio-utils
,wdio-webdriver-mock-service
,webdriverio
- #7397 Fix chaining of custom$ and custom$ (@christian-bromann)
- Christian Bromann (@christian-bromann)
wdio-cli
,wdio-cucumber-framework
- #7398 Export Cucumber functions through
@wdio/cucumber-framework
package (@christian-bromann)
- #7398 Export Cucumber functions through
- Christian Bromann (@christian-bromann)
- Jozef Harag (@Joozty)
wdio-protocols
,wdio-utils
,webdriver
,webdriverio
- #7384 Add Geckodriver specific protocol commands (@christian-bromann)
wdio-cli
devtools
- #7358 Allow undefined as executeAsync parameter (@christian-bromann)
wdio-jasmine-framework
- #7371 Overwrite jasmine types to allow retries (@christian-bromann)
- #7382 docs(website): add new company in carousel (@Slashgear)
- #7372 docs: typos, grammar (@saintmalik)
- #7370 removed duplicate reporter entry (@babusekaran)
- Antoine Caron (@Slashgear)
- Babu Sekaran (@babusekaran)
- Christian Bromann (@christian-bromann)
- GPT14 (@gpt14)
- SaintMalik (@saintmalik)
wdio-jasmine-framework
,wdio-junit-reporter
,wdio-mocha-framework
webdriverio
- #7348 Allow
isExisting
to work with an composed element (@christian-bromann)
- #7348 Allow
- Christian Bromann (@christian-bromann)
- Luis Thur (@lthurr)
wdio-utils
- #7339 Be compliant with Jasmine timeout parameter for specs and hooks (@christian-bromann)
- #7328 Serenity/JS + WebdriverIO blog post and boilerplates (@jan-molak)
- #7287 Document WebdriverIO TypeScript definitions (@christian-bromann)
wdio-cucumber-framework
- #7309 Update Cucumber packages (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Jan Molak (@jan-molak)
- Jonathan Lipps (@jlipps)
wdio-types
,wdio-utils
- #7308 Better detect Appium sessions (@christian-bromann)
- Christian Bromann (@christian-bromann)
- peters (@p1100i)
wdio-utils
,wdio-webdriver-mock-service
- #7291 Allow to call catch and finally on element calls (@christian-bromann)
wdio-runner
- #7290 Run after hook even if session initiation fails (@christian-bromann)
wdio-utils
- #7289 Support for @wdio/sync alongside the new v7.9.x Async API (@christian-bromann)
wdio-browserstack-service
wdio-reporter
- #7262 Don't show error diff if 'actual' and 'expected' are empty (@christian-bromann)
wdio-sauce-service
- #7263 Don't report pending in Jasmine as error in Sauce (@christian-bromann)
- #7265 Allow to set custom job name in Sauce Labs service (@christian-bromann)
webdriverio
- #7252 Fix for newWindow called twice opens only one window (@christian-bromann)
wdio-utils
- #7272 Order UNICODE_CHARACTERS map (@pieceOpiland)
- Christian Bromann (@christian-bromann)
- Ivan Balukov (@balukov)
- Stefan Bley (@sbley)
- @pieceOpiland
wdio-utils
,wdio-webdriver-mock-service
- #7225 Add support for async iterators (@christian-bromann)
webdriverio
- #7226 Fix typings for addLocatorStrategy (@christian-bromann)
wdio-allure-reporter
wdio-cucumber-framework
wdio-allure-reporter
,webdriver
- #7206 Improve WebDriver error handling (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Meir Blachman (@Meir017)
- Raju (@spnraju)
- iamkenos (@iamkenos)
wdio-cli
,wdio-jasmine-framework
,wdio-utils
,wdio-webdriver-mock-service
,webdriverio
- #6954 Implement new async API (@christian-bromann)
webdriverio
- #7190 fix-isdisplayed-msedge (@savkaoleg)
webdriverio
- #7183 Removed invalid strategy check as fix for #7174 (@praveendvd)
wdio-reporter
- #7184 export Test Element (@yon-cuadrado)
- Christian Bromann (@christian-bromann)
- Savka Oleg (@savkaoleg)
- @yon-cuadrado
- praveendvd (@praveendvd)
wdio-cucumber-framework
- #7153 Fix for rule keyowrd not working 'Cannot use Rule keyword in Cucumber… (@praveendvd)
devtools
,wdio-browserstack-service
,wdio-crossbrowsertesting-service
,wdio-sauce-service
,wdio-testingbot-service
,wdio-types
,webdriver
- #7169 feat: allow use of the ky request library in browser contexts (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Nick Chursin (@unickq)
- praveendvd (@praveendvd)
wdio-junit-reporter
webdriverio
- #7154 fix: detect lambdatest service (@Joozty)
- #7155 Propagate requestedCapabilities when attaching to running session (@christian-bromann)
- #7156 Improve typings for touchAction command (@christian-bromann)
devtools
- #7149 Propagate chrome flags and user data dir to
chrome-launcher
(@christian-bromann)
- #7149 Propagate chrome flags and user data dir to
webdriverio
- #7158 Support regular expressions for mock urls (@christian-bromann)
- #7152 DepCheck : Added console log for error (@jayandran-Sampath)
- Christian Bromann (@christian-bromann)
- Jozef Harag (@Joozty)
- Luis Thur (@lthurr)
- @jayandran-Sampath
wdio-mocha-framework
,wdio-reporter
,wdio-spec-reporter
- #6943 Report error diff if error is assertion error (@christian-bromann)
wdio-config
,wdio-runner
,wdio-types
,webdriverio
- #7126 Improve documentation and type support for spec grouping (@christian-bromann)
wdio-cli
wdio-allure-reporter
,wdio-spec-reporter
- #7134 Added ability to add console log to allure and spec reporters (fix for #7001) (@praveendvd)
webdriverio
wdio-applitools-service
,wdio-cli
- #6884 Deprecate and remove
@wdio/applitools-service
(@christian-bromann)
- #6884 Deprecate and remove
- Bohdan Belenok (@L0tso)
- Christian Bromann (@christian-bromann)
- @tzurp
- praveendvd (@praveendvd)
wdio-allure-reporter
- #7081 Fix for Cucumber Data Table not showing in allure report #7078 (@praveendvd)
- Dmitriy Dudkevich (@DudaGod)
- praveendvd (@praveendvd)
wdio-allure-reporter
,wdio-utils
- #7059 Fix for Assertions are thrown twice (webdriverio/expect-webdriverio#462) (@praveendvd)
wdio-cli
wdio-junit-reporter
wdio-selenium-standalone-service
- #7093 (docs) Updating @wdio/selenium-standalone-service install version (@harsha509)
webdriverio
- #7073 Docs: Example code correction (@harsha509)
- Other
- Cecil (@cek333)
- Eric Saari (@esaari)
- Nick Chursin (@unickq)
- Sri Harsha (@harsha509)
- @rubencanlas
- praveendvd (@praveendvd)
wdio-protocols
- #7002 Issue #6977: Renamed 'reset' command in Appium to 'resetApp' (@srikanthgurram)
wdio-devtools-service
- #7020 Wrap coverage transform into try/catch to avoid staleness (@christian-bromann)
wdio-selenium-standalone-service
wdio-sauce-service
- #7028 Enable updating job name for UP tests for Sauce Labs (@wswebcreation)
wdio-devtools-service
- #7027 Support Firefox 86+ in Devtools Service & Migrate from deprecated Console domain (@dylanlive)
- Christian Bromann (@christian-bromann)
- Dylan Reichstadt (@dylanlive)
- Kevin Lamping (@klamping)
- Mykola Grybyk (@mgrybyk)
- Srikanth (@srikanthgurram)
- Wim Selles (@wswebcreation)
wdio-cli
,wdio-sauce-service
,wdio-spec-reporter
,wdio-types
,webdriverio
- #6964 support APAC region for Sauce Labs (@christian-bromann)
wdio-utils
- #6965 fix: Remove scripts from log payload (@OlaoluwaM)
wdio-mocha-framework
- Christian Bromann (@christian-bromann)
- Olaoluwa Mustapha (@OlaoluwaM)
- @PiQx
wdio-utils
- #6958 Fix for isW3C (@Oleksandr-Antonkin-epam)
- Oleksandr Antonkin (@Oleksandr-Antonkin-epam)
wdio-logger
,webdriverio
- #6930 Implement restore/clear all mocks (@christian-bromann)
devtools
- #6924 Improve window management in devtools (@christian-bromann)
- #6927 Fix double click in devtools (@christian-bromann)
wdio-cli
- #6926 Better allow for manual TS transpiling (@christian-bromann)
- #6933 CLI : Update visual-regression-testing to image-comparison (@pjcalvo)
webdriverio
- #6915 keep original selector for custom locator strategy (@christian-bromann)
- #6929 Use WebDriver if Appium capabilities are found (@christian-bromann)
wdio-sauce-service
- #6662 Strip color ascii characters when uploading error message to Sauce Labs job (@christian-bromann)
- #6912 Report errors on Sauce Labs in test hooks (@christian-bromann)
wdio-devtools-service
- #6920 Issue #6877: Exclude files from code coverage (@kailin0512)
wdio-cli
,wdio-crossbrowsertesting-service
,wdio-cucumber-framework
,wdio-sauce-service
,wdio-testingbot-service
,wdio-types
- #6941 Propagate better result object in
afterScenario
(@christian-bromann)
- #6941 Propagate better result object in
- Other
webdriverio
wdio-cli
wdio-cucumber-framework
- Christian Bromann (@christian-bromann)
- John Pratt (@jpratt2)
- Johnson E (@jonn-set)
- Kai (@kailin0512)
- Pablillo Calvo (@pjcalvo)
- Stwippie (@stwippie)
webdriverio
wdio-allure-reporter
,wdio-cucumber-framework
wdio-cli
,wdio-cucumber-framework
,wdio-spec-reporter
- #6836 Modifies the cucumberEventListener to emit before-feature and after-feature events differently when using spec grouping configurations (@mikesalvia)
wdio-cli
- #6893 Add custom wdio-ms-teams-service (@marcelblijleven)
- #6862 Adding wdio-eslinter-service to auto-detect missing require imports i… (@jamesmortensen)
- Other
- Eric Saari (@esaari)
- James (@jamesmortensen)
- Johnson E (@jonn-set)
- Marcel Blijleven (@marcelblijleven)
- Mike Salvia (@mikesalvia)
wdio-cli
- #6858 Fix
wdio-wait-for
install via cli (@christian-bromann)
- #6858 Fix
devtools
,wdio-utils
,webdriverio
- #6661 Special characters not properly detected with Puppeteer (@christian-bromann)
- Other
webdriverio
wdio-cucumber-framework
,wdio-jasmine-framework
,wdio-mocha-framework
- #6869 Upgrade
expect-webdriverio
to v3 (@christian-bromann)
- #6869 Upgrade
- Abhinaba Ghosh (@abhinaba-ghosh)
- Christian Bromann (@christian-bromann)
- Kevin Lamping (@klamping)
- MD SADAB SAQIB (@sadabnepal)
- Nick Chursin (@unickq)
- Olga (@osmolyar)
- Sébastien Lorber (@slorber)
devtools
,wdio-devtools-service
- #6832 Fix reloading devtools sessions (@christian-bromann)
wdio-cli
,wdio-reporter
- #6833 Setup Babel if not already (@christian-bromann)
- Christian Bromann (@christian-bromann)
webdriverio
- #6814 Properly scope deep selector calls (@christian-bromann)
webdriverio
- #6810 Have a single implementation for $ command (@christian-bromann)
- Other
- #6788 Document package exports for
webdriverio
,webdriver
anddevtools
package (@christian-bromann)
- #6788 Document package exports for
webdriverio
- Christian Bromann (@christian-bromann)
- Jozef Harag (@Joozty)
- @dependabot-preview[bot]
wdio-local-runner
- #6790 Corrected output stream handling (issue from 7.5.3) (@jan-molak)
- Jan Molak (@jan-molak)
- LarryG (@larryg01)
wdio-local-runner
- #6781 Add CID to every line printed to stdout (@jan-molak)
- #6782 Documentation fix: Removed $ sign in commands so it wont be copied (@Xotabu4)
- #6762 Added wdio 7 with appium and cucumber boilerplate (@Arjun-Ar91)
- Arjun (@Arjun-Ar91)
- Jan Molak (@jan-molak)
- Oleksandr Khotemskyi (@Xotabu4)
wdio-types
,webdriver
,webdriverio
- #6759 attach to session improvements (@christian-bromann)
devtools
- #6751 fix executeScript results transformation in devtools (@kyryloonufriiev)
webdriver
,webdriverio
- #6756 Retry connection refused errors (@christian-bromann)
wdio-cli
- #6758 Print custom error message if installing deps fails with no stderr (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Clive Galway (@evilC)
- Kyrylo (@kyryloonufriiev)
- @dependabot-preview[bot]
wdio-devtools-service
- #6736
checkPWA
command is broken (@christian-bromann) - #6664 Fix Devtools hang on Android (@nicolasbouffard)
- #6736
wdio-cucumber-framework
- #6737 Pin Cucumber package versions (@christian-bromann)
wdio-cli
- #6732 add(service): waitFor external package (@elaichenkov)
- Christian Bromann (@christian-bromann)
- Yevhen (@elaichenkov)
- @nicolasbouffard
devtools
,webdriverio
- #6709 Implement
>>>
(deep) selector for WebdriverIO (@christian-bromann)
- #6709 Implement
devtools
- #6725 Fix DevToolsDriver elements storing (@kyryloonufriiev)
wdio-config
- #6720 fix: Only log when the entry is not a string or array (@seanpoulter)
- #6678 Document the transition from a Protractor to WebdriverIO framework (@christian-bromann)
- #6722 Update broken links (@rueyaa332266)
- #6626 Update CustomServices.md (@tzurp)
- Christian Bromann (@christian-bromann)
- Jye Ruey (@rueyaa332266)
- Kyrylo (@kyryloonufriiev)
- Sean Poulter (@seanpoulter)
- @dependabot-preview[bot]
- @tzurp
wdio-cli
- #6718 Remove
@wdio/sync
package from cli wizard (@christian-bromann)
- #6718 Remove
wdio-utils
,webdriverio
- #6606 webdriverio: fix setvalue typings (@erwinheitzman)
- Christian Bromann (@christian-bromann)
- Erwin Heitzman (@erwinheitzman)
- Stefan Bley (@sbley)
devtools
- #6684 Allow more options to connect to a remote devtools connection (@christian-bromann)
wdio-devtools-service
- #6701 Fix
checkPWA
command (@christian-bromann)
- #6701 Fix
wdio-reporter
,wdio-runner
,wdio-spec-reporter
,wdio-types
- #6700 Improve spec reporting for multiremote (@christian-bromann)
wdio-selenium-standalone-service
- #6681 Fix connection details setting for multiremote in selenium server (@christian-bromann)
wdio-jasmine-framework
- #6687 Remove done callback in Jasmine (@christian-bromann)
wdio-browserstack-service
- #6683 [BUGFIX] wdio-browserstack-service using the wrong session url when w3c properties are enforced (@sanghun89)
wdio-cli
- #6699 Properly type config file if TypeScript is being used (@christian-bromann)
wdio-config
- #6658 Added ability to group specs in suites (@RossVertizan)
webdriverio
- #6682 Enhance docs for custom locator strategy (@christian-bromann)
- #6698 Small typo (@idanen)
- Christian Bromann (@christian-bromann)
- Idan Entin (@idanen)
- Ross Addinall (@RossVertizan)
- Sam Chun (@sanghun89)
- @dependabot-preview[bot]
webdriverio
- #6676 Fix devtools url for Aerokube Selenoid\Moon sessions (@BorisOsipov)
- #6625 fix sync browser type for "call" method (@giacomomagini)
wdio-types
,webdriverio
- #6673 webdriverio: Allow to use devtools features for Aerokube Selenoid\Moon sessions (@BorisOsipov)
wdio-cli
- #6668 feat: add wdio-ocr-service to the service menu and service cli (@wswebcreation)
- Other
- Boris Osipov (@BorisOsipov)
- Christian Bromann (@christian-bromann)
- Erwin Heitzman (@erwinheitzman)
- Giacomo Magini (@giacomomagini)
- Wim Selles (@wswebcreation)
- @arsen1c
- @dependabot-preview[bot]
wdio-cli
,wdio-config
,wdio-reporter
,wdio-spec-reporter
- #6548 Implementation of grouped spec files for a single worker instance (@RossVertizan)
devtools
,webdriverio
- #6637 Implement
attachToSession
for devtools package (@christian-bromann)
- #6637 Implement
wdio-utils
- #6512 Issue #6511 fix (@patkunicki)
wdio-runner
- #6629 Propagate connection details from capabilities (@christian-bromann)
wdio-selenium-standalone-service
- #6628 Check caps in
@wdio/selenium-standalone-server
before modifying capabilities (@christian-bromann)
- #6628 Check caps in
wdio-cucumber-framework
- #6619 Make CucumberOpts properties optional (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Kevin Lamping (@klamping)
- Ross Addinall (@RossVertizan)
- Wim Selles (@wswebcreation)
- @dependabot-preview[bot]
- @patkunicki
webdriverio
- #6600 Fix drag and drop (@erwinheitzman)
- #6610 fix(typo): Minor typo fixes and #6553 (@JS31096)
- Christopher Peck (@cpeck-bi)
- Erwin Heitzman (@erwinheitzman)
- Sri Harsha (@JS31096)
wdio-cli
- #6594 Better expose config handler (@christian-bromann)
wdio-appium-service
,wdio-applitools-service
,wdio-cli
,wdio-devtools-service
,wdio-jasmine-framework
- #6597 Mitigate LGTM scan warnings (@christian-bromann)
wdio-types
,webdriverio
- #6599 Use a flat namespace for selenium options for finding WebDriver Bidi endpoint (@BorisOsipov)
- Other
- #6598 Improve project contributing guidelines (@christian-bromann)
webdriver
- #6317 Make it easier to add commands that make WebDriver based requests (@christian-bromann)
- Boris Osipov (@BorisOsipov)
- Christian Bromann (@christian-bromann)
wdio-sauce-service
- #6099 Upload WDIO logs to Sauce Labs via Sauce Service (@christian-bromann)
wdio-config
,wdio-types
- #6581 Support custom tsconfig-paths options (@christian-bromann)
webdriverio
- #6582 Only apply base url if not empty string (@christian-bromann)
- #6580 Update BambooIntegration.md (@vishwanath7sh)
- Christian Bromann (@christian-bromann)
- Vishwanath S h (@vishwanath7sh)
- @dependabot-preview[bot]
- iamkenos (@iamkenos)
wdio-cli
,wdio-cucumber-framework
,wdio-jasmine-framework
,wdio-local-runner
,wdio-mocha-framework
- #6577 Update
expect-webdriverio
(@christian-bromann)
- #6577 Update
wdio-junit-reporter
- #6464 Junit cucumber reporting fix (@AutomationReddy)
wdio-cli
- Christian Bromann (@christian-bromann)
- Vinod Reddy (@AutomationReddy)
- iamkenos (@iamkenos)
wdio-types
,webdriverio
- #6508 Support Selenium 4.0 Grid CDP for Devtools Service (@dylanlive)
wdio-jasmine-framework
,webdriverio
- Dylan Reichstadt (@dylanlive)
- Kanitkorn Sujautra (@lukyth)
- iamkenos (@iamkenos)
webdriverio
- #6480 make use of ARIA Sematics role to identify element(webdriverio#6363) (@jayandran-Sampath)
wdio-allure-reporter
- Fabien CELLIER (@lacell75)
- @jayandran-Sampath
webdriverio
- #6520 Fix TS return types for $ command (@christian-bromann)
devtools
,webdriverio
webdriverio
- #6521 Expose ElementArray as type to the WebdriverIO namespace (@christian-bromann)
- Other
wdio-sauce-service
- #6513 change SC options link (@enriquegh)
- Bohdan Belenok (@L0tso)
- Christian Bromann (@christian-bromann)
- Enrique Gonzalez (@enriquegh)
- Punit Gupta (@pgAdmin)
- Taiju Muto (@tai2)
- @dependabot-preview[bot]
devtools
- #6371 Added goog:chromeOption for passing the debugging port to the devtools chrome launcher (Closes #6370) (@jamesmortensen)
wdio-sumologic-reporter
- #6485 change internal variable type to resolve build issue (@jayandran-Sampath)
webdriverio
- #6498 add missing type property hex for ParsedColor (@dannyfink)
wdio-devtools-service
- #6497 add missing comma for code coverage snippet for devtools service (@dannyfink)
- Other
- #6493 docs: fix minor typo (@timbru31)
- #6484 Add og:image and twitter:image (@38elements)
- Other
webdriverio
- 17thSep.net (@17thSep)
- 38elements (@38elements)
- James (@jamesmortensen)
- Kanitkorn Sujautra (@lukyth)
- Tim Brust (@timbru31)
- @dannyfink
- @jayandran-Sampath
wdio-cli
,wdio-config
,wdio-runner
,wdio-types
- #6475 Fix auto compile mechanism (@christian-bromann)
devtools
,wdio-types
- #6473 better type and document
wdio:devtoolsOptions
(@christian-bromann)
- #6473 better type and document
wdio-cli
,wdio-config
,wdio-jasmine-framework
,wdio-junit-reporter
- #6472 Rename
jasmineNodeOpts
intojasmineOpts
(@christian-bromann)
- #6472 Rename
wdio-types
- #6474 Improve type definition for Sauce Labs capabilities (@christian-bromann)
- Other
- Christian Bromann (@christian-bromann)
- Eric Saari (@esaari)
- Piotr Mikosz (@MikoSh95)
wdio-cucumber-framework
- #6453 Fix/add cucumber keyword (@wswebcreation)
- Piotr Mikosz (@MikoSh95)
- Wim Selles (@wswebcreation)
wdio-sauce-service
- #6454 Fix/sauce service cucumber (@wswebcreation)
- #6446 chore: fix link to contributor guide in README (@web-padawan)
devtools
,wdio-devtools-service
,webdriverio
- #6447 chore: remove obsolete puppeteer types (@web-padawan)
- Serhii Kulykov (@web-padawan)
- Wim Selles (@wswebcreation)
wdio-cucumber-framework
- #6441 Ensure that 'title' property is passed down by cucumber framework to reporters (@rickschubert)
wdio-cli
,wdio-local-runner
,wdio-types
- #6373 @wdio/cli: Ensure watch mode re-runs all specs when the --spec command line option is set and a filesToWatch file is added or changed (@kohlmannj)
wdio-junit-reporter
- #6439 Removed _ from suite/test name in junit reporter (@AutomationReddy)
devtools
,wdio-allure-reporter
- Other
- #6444 fixed typo in the wdio exec command (@AutomationReddy)
wdio-runner
,webdriverio
- #6429 Improve typings for instance base (@christian-bromann)
wdio-cli
,wdio-cucumber-framework
,webdriverio
- #6431 fix docs for cucumber hooks (@christian-bromann)
wdio-junit-reporter
- #6430 bump junit reporter builder (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Joseph Kohlmann (he/him/his) (@kohlmannj)
- Raju (@spnraju)
- Rick Schubert (@rickschubert)
- Vinod Reddy (@AutomationReddy)
- @dependabot-preview[bot]
wdio-types
,webdriver
,webdriverio
- #6416 Move user/key options back to
webdriver
package (@christian-bromann)
- #6416 Move user/key options back to
webdriverio
- #6415 Allow
ScrollIntoViewOptions
inscrollIntoView
(@christian-bromann)
- #6415 Allow
- Christian Bromann (@christian-bromann)
wdio-config
,wdio-runner
,wdio-sync
,wdio-types
,webdriver
,webdriverio
- #6408 Refactor
detectBackend
and move it to thewebdriverio
package (@christian-bromann)
- #6408 Refactor
- Christian Bromann (@christian-bromann)
wdio-allure-reporter
,wdio-appium-service
,wdio-applitools-service
,wdio-browserstack-service
,wdio-concise-reporter
,wdio-crossbrowsertesting-service
,wdio-cucumber-framework
,wdio-devtools-service
,wdio-dot-reporter
,wdio-firefox-profile-service
,wdio-jasmine-framework
,wdio-junit-reporter
,wdio-local-runner
,wdio-sauce-service
,wdio-selenium-standalone-service
,wdio-spec-reporter
,wdio-sumologic-reporter
,wdio-testingbot-service
- #6402 Update peer dependencies (@christian-bromann)
- Christian Bromann (@christian-bromann)
- Kanitkorn Sujautra (@lukyth)
- #6302 TypeScript Rewrite
-
As we have moved the complete code base to TypeScript we have rewritten the way how WebdriverIO provides type definitions to you. This has been more or less and internal change that should only affect users using TypeScript and having custom command definitions. In order to have proper type support now you need to add
webdriverio/sync
to your list of types, e.g.:// tsconfig.json "types": [ "node", "webdriverio/sync", "@wdio/mocha-framework" ],
Custom commands can now be added like this:
declare global { namespace WebdriverIO { interface Browser { browserCustomCommand: (arg: number) => void } } } browser.browserCustomCommand(42)
We do not recommend to specify
webdriverio
or@wdio/sync
in there anymore. For more information visit our updated docs on TypeScript Integration. -
If you use WebdriverIO in multiremote mode to get proper typing you should use the
multiremote
global variable -
Alongside with this change we also equipped the testrunner to auto-compile your configuration if TypeScript is detected, this allows to leverage type safety in your WDIO configuration without any additional setup (big thanks for this contribution goes to @r4j4h) 👏 With that you also don't need
ts-node/register
to be required in your Mocha, Jasmine or Cucumber options, e.g.:jasmineOpts: { - requires: ['ts-node/register', 'tsconfig-paths/register'], + requires: ['tsconfig-paths/register'], },
-
It is required to have TypeScript v4 or higher
-
- #6309 Cucumber Framework update to v7
- We have updated our Cucumber integration to use Cucumber v7
- To provide proper type safety we updated the Cucumber hooks to match original Cucumber types
- #6276 Google Lighthouse Updates
-
We have updated Google Lighthouse to support the latest performance metrics introduced by Google Lighthouse v7
-
There are no default environment changes when running performance tests anymore. If you want to emulate a mobile user (which is a recommended practice) you have to pass these information when running
enablePerformanceAudits
, e.g.:browser.emulateDevice('iPhone X') browser.enablePerformanceAudits({ networkThrottling: 'Regular 3G', cpuThrottling: 4, cacheEnabled: false, formFactor: 'mobile' })
-
We added
formFactor
to theEnablePerformanceAuditsOptions
as it has been added to Lighthouse v7 as well, it tweaks the performance results based on which environment you run your tests in to give certain performance factors more weight -
We added a new command test PWA apps based on Google Lighthouse audits, e.g.:
const result = browser.checkPWA() expect(result.passed).toBe(true)
Checks the following PWA criterias:
- Installable
- PWA optimized (without checking for HTTPS redirect)
We have purposely not added the complete set of audits as they require data that can only be captured through additional automation commands. These could interfer with further test processes and skew results and create flakiness which would make integrating these commands difficult.
-
- #3407 Automatically run worker with Babel if setup
- In order to improve the onboarding experience we will now automatically compile the configuration and your test files using Babel or TypeScript
- This will allow you to have
import
statements in your config file without any additional setup
- #6054 Validate W3C Capabilities
- With the WebDriver protocol being a recommended standard since 2018 we want to move away from usage of outdated capability sets that might confuse WebDriver endpoints
- This breaking change will throw an error if we detect invalid capabilities when user use a mixture of clear W3C capabilities and outdated JSONWireProtocol capabilities, e.g.:
will fail this check because vendor capabilities have been used which were introduced by WebDriver while at the same time a JSONWireProtocol capability (
capabilities: { browserName: 'Chrome', platform: 'Windows 10', // invalid JSONWire Protocol capability 'goog:chromeOptions': { ... } }
platform
) has been used too
- #6236 Update fibers to v5 and drop Node.js support for v10
- We recommend to continue to use Node.js v12 and higher)
- #6311 Get Test Coverage Report
- The
@wdio/devtools-service
now offers to capture the code coverage of your JavaScript application files. This can help you to identify whether you should write more e2e tests or not. To enable the feature you have to enable it by setting thecoverageReporter
option for the service:// wdio.conf.js services: [ ['devtools' { coverageReporter: { enable: true, type: 'html', logDir: __dirname + '/coverage' } }] ]
- You can also assert the code coverage within your tests using the new
getCoverageReport
command, e.g.:const coverage = browser.getCoverageReport() expect(coverage.lines.total).toBeAbove(0.9) expect(coverage.statements.total).toBeAbove(0.9) expect(coverage.functions.total).toBeAbove(0.9) expect(coverage.branches.total).toBeAbove(0.9)
- The
- We have renamed our main development branch from
master
tomain
- As the WebdriverIO community is committed to be an inclusive community we join the global effort to remove all unnecessary references to slavery and other non-inclusive terms.
- #6392 Add Sauce Labs sharable report links in
@wdio/spec-reporter
- New Website Design and Documentation Overhaul
- The project maintainers are constantly striving to provide better documentation and clear descriptions on commands and WebdriverIO functionality. We the v7 release we now also publish an overhauled website design and re-organisation of our docs.
- You will continue to find the old docs in their respective places:
- v6 docs - v6.webdriver.io
- v5 docs - v5.webdriver.io
- v4 docs - v4.webdriver.io