Commit graph

8065 commits

Author SHA1 Message Date
Christian Bromann
b63166ae24
fix(webdriverio): don't throw if tree to attach element couldn't be found, as it causes issues for component tests 2025-07-17 10:10:28 -07:00
WebdriverIO Release Bot
a515cdf9ce v9.18.0 2025-07-16 18:21:24 +00:00
Christian Bromann
37b4536580
fix(security): address multiple security vulnerabilities across codebase (#14570)
* fix(security): address multiple security vulnerabilities across codebase

* further improvements

* fix unit tests

* Potential fix for code scanning alert no. 65: Incomplete multi-character sanitization

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Potential fix for code scanning alert no. 69: Incomplete multi-character sanitization

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* properly escape regexp

* minor formatting

* improvements

* Potential fix for code scanning alert no. 72: Bad HTML filtering regexp

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* Potential fix for code scanning alert no. 76: Incomplete multi-character sanitization

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* more stable comment removal implementation

* fix tests

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-07-16 11:18:01 -07:00
Christian Bromann
69b2f3f90b
chore(*): update major dependencies where possible (#14641)
* chore(*): update major dependencies where possible

* add back missing Chalk

* fix unit tests

* revert serialize-error update due to lacking Node.js v18 support

* Revert "revert serialize-error update due to lacking Node.js v18 support"

This reverts commit 34bf1d0f501820be0051d1fec5105158f8588580.

* revert undici instead
2025-07-14 11:27:01 -07:00
Christian Bromann
418e28b37f
fix(internal): update pnpm-lock 2025-07-14 10:15:11 -07:00
dependabot[bot]
44fda493ac
chore(deps): bump the patch-deps-updates-main group with 4 updates (#14636)
---
updated-dependencies:
- dependency-name: "@serenity-js/core"
  dependency-version: 3.32.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@types/node"
  dependency-version: 20.19.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@nuxt/kit"
  dependency-version: 3.17.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: devtools-protocol
  dependency-version: 0.0.1485358
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Christian Bromann <git@bromann.dev>
2025-07-14 10:14:30 -07:00
dependabot[bot]
a6f0360fe9
chore(deps): bump the minor-deps-updates-main group with 7 updates (#14637)
---
updated-dependencies:
- dependency-name: "@aws-sdk/client-cloudfront"
  dependency-version: 3.844.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: "@aws-sdk/client-device-farm"
  dependency-version: 3.844.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: "@aws-sdk/client-s3"
  dependency-version: 3.844.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: "@aws-sdk/lib-storage"
  dependency-version: 3.844.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: csv-stringify
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: expect-webdriverio
  dependency-version: 5.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: "@babel/core"
  dependency-version: 7.28.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 10:10:59 -07:00
Vladimir
3740f39bda
fix: avoid starting a timeout if the timer was resolved immediately (#14642) 2025-07-14 09:44:10 -07:00
uladhsi
b4e3884ea7
feat: do not attach prefs when debuggerAddress is specified (#14634) 2025-07-14 08:44:25 -07:00
Christian Bromann
04f7c4e0ba
fix(webdriverio): properly toggle DISABLE_WEBDRIVERIO_DEPRECATION_WARNINGS (#14640) 2025-07-14 08:43:38 -07:00
Kitsios Konstantinos
ab1a2e82b1
ci: skip test suite for pushes that change only markdown files (#14633)
Signed-off-by: Konstantinos <konstantinos.kitsios@uzh.ch>
2025-07-14 08:11:45 -07:00
Christian Bromann
e0e57ab248
fix(create-wdio): resolve template directory in test 2025-07-11 09:45:48 -07:00
Luke
bc720bef67
feat(wdio-cli): enhance job completion logging format (#14632) 2025-07-11 09:41:46 -07:00
Regan Karlewicz
c501fbc0e0
chore: Update services.json to add TV Labs service (#14631)
* Add TV Labs service to services.json

* Add TV Labs service to wdio-create
2025-07-11 09:29:21 -07:00
WebdriverIO Release Bot
76c095bd0d v9.17.1 2025-07-09 18:52:08 +00:00
Christian Bromann
f4bd2b02bb
fix(create-wdio): fix path to template directory 2025-07-09 11:49:07 -07:00
WebdriverIO Release Bot
796df04f0f v9.17.0 2025-07-09 06:16:07 +00:00
dependabot[bot]
fee7639689
chore(deps): bump the patch-deps-updates-main group across 1 directory with 9 updates (#14624)
Bumps the patch-deps-updates-main group with 9 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@serenity-js/core](https://github.com/serenity-js/serenity-js/tree/HEAD/packages/core) | `3.32.2` | `3.32.3` |
| [@stencil/core](https://github.com/stenciljs/core) | `4.35.1` | `4.35.3` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `20.19.2` | `20.19.5` |
| [@types/shelljs](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/shelljs) | `0.8.16` | `0.8.17` |
| [expect](https://github.com/jestjs/jest/tree/HEAD/packages/expect) | `30.0.0-alpha.7` | `30.0.4` |
| [esbuild](https://github.com/evanw/esbuild) | `0.25.5` | `0.25.6` |
| [@nuxt/kit](https://github.com/nuxt/nuxt/tree/HEAD/packages/kit) | `3.17.5` | `3.17.6` |
| [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine) | `5.1.5` | `5.1.8` |
| [devtools-protocol](https://github.com/ChromeDevTools/devtools-protocol) | `0.0.1475386` | `0.0.1483532` |



Updates `@serenity-js/core` from 3.32.2 to 3.32.3
- [Release notes](https://github.com/serenity-js/serenity-js/releases)
- [Changelog](https://github.com/serenity-js/serenity-js/blob/main/packages/core/CHANGELOG.md)
- [Commits](https://github.com/serenity-js/serenity-js/commits/v3.32.3/packages/core)

Updates `@stencil/core` from 4.35.1 to 4.35.3
- [Release notes](https://github.com/stenciljs/core/releases)
- [Changelog](https://github.com/stenciljs/core/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stenciljs/core/compare/v4.35.1...v4.35.3)

Updates `@types/node` from 20.19.2 to 20.19.5
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@types/shelljs` from 0.8.16 to 0.8.17
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/shelljs)

Updates `expect` from 30.0.0-alpha.7 to 30.0.4
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v30.0.4/packages/expect)

Updates `esbuild` from 0.25.5 to 0.25.6
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.25.5...v0.25.6)

Updates `@nuxt/kit` from 3.17.5 to 3.17.6
- [Release notes](https://github.com/nuxt/nuxt/releases)
- [Commits](https://github.com/nuxt/nuxt/commits/v3.17.6/packages/kit)

Updates `@types/jasmine` from 5.1.5 to 5.1.8
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine)

Updates `devtools-protocol` from 0.0.1475386 to 0.0.1483532
- [Changelog](https://github.com/ChromeDevTools/devtools-protocol/blob/master/changelog.md)
- [Commits](https://github.com/ChromeDevTools/devtools-protocol/compare/v0.0.1475386...v0.0.1483532)

---
updated-dependencies:
- dependency-name: "@serenity-js/core"
  dependency-version: 3.32.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@stencil/core"
  dependency-version: 4.35.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@types/node"
  dependency-version: 20.19.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@types/shelljs"
  dependency-version: 0.8.17
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: expect
  dependency-version: 30.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: esbuild
  dependency-version: 0.25.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@nuxt/kit"
  dependency-version: 3.17.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: "@types/jasmine"
  dependency-version: 5.1.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
- dependency-name: devtools-protocol
  dependency-version: 0.0.1483532
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: patch-deps-updates-main
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Christian Bromann <git@bromann.dev>
2025-07-08 23:01:07 -07:00
Simon Markowski
d748681bdc
chore(linter) fixed linter warnings with --fix (#14626) 2025-07-08 23:00:01 -07:00
Simon Markowski
60fed57e02
fix(webdriver): #14622 added ability to proxy websocket connections (#14625) 2025-07-08 21:39:29 -07:00
Christian Bromann
15dbcee071
internal(security): consolidate documents 2025-07-08 16:42:02 -07:00
Christian Bromann
4710259155
fix(webdriver): move killDriverProcess to a node specific import 2025-07-08 16:36:32 -07:00
Christian Bromann
80cfd4a3d4
fix(webdriver): re-enable undici global dispatcher (#14623) 2025-07-08 16:22:09 -07:00
Vishnu Vardhan
ea9d91050e
[BUG-14499] - Improved switchFrame for delayed iframe contexts (#14587)
* Retry mechanism in case of delayed iframe

* Added comments

* Fixes webdriver#14499

* Fixes webdriverio#14499

* Review changes

* Added retries in test case to make sure newContextId is resolved for delayed iframe

* Lint fix

* Update packages/wdio-utils/src/initializeServices.ts

---------

Co-authored-by: Christian Bromann <git@bromann.dev>
2025-07-08 16:16:18 -07:00
David Prevost
97c8f8a7a5
fix: Emit browser custom command beforeCommand to fix broken reports (#14581)
* Compiling fix with type breaking changes

* Preliminary unit tests show problem with the result wrapped in promise

* Fix bad import

* Working code but weird unit tests failures

* Test simple custom command function instead of promise

* Use an approach more compliant with existing code

* Code review

* Review `attachJSON` so it works as expected in all cases

* Coe review

* Apply suggestions from code review

Co-authored-by: Christian Bromann <git@bromann.dev>

* Deprecate name instead of removing it + keep legacy emit!

* Update packages/wdio-allure-reporter/src/reporter.ts

---------

Co-authored-by: Christian Bromann <git@bromann.dev>
2025-07-08 16:15:05 -07:00
Dmytro 🇺🇦
e887022cc4
fix(@wdio/local-runner): added graceful exit on SIGINT (#14611)
* fix(local-runner): use asyncExitHook for graceful shutdown

* fix(local-runner): changed test naming and expected timeout

---------

Co-authored-by: Christian Bromann <git@bromann.dev>
2025-07-08 16:13:45 -07:00
mato533
3f1e7ef93a
feat: integrate the create-wdio package (#14618)
* chore: create sub-package of `create-wdio`

* docs: copy and adjustment for changing repository

* chore: copy a code of create-wdio

* chore: update compiler plugin

* chore: adjust npm script

* chore(wdio-cli): delete the code copied to `create-wdio`

* chore: remove compiler plugin for @wdio/cli

* docs: update root readme

* chore: update package.json

* style: apply format rule

* fix: remove unnecessary export `installPackages`

* test: remove unnecessary mocking in wdio-cli

---------

Co-authored-by: Christian Bromann <git@bromann.dev>
2025-07-08 16:13:28 -07:00
Christian Bromann
6464dc7d4a
fix(@wdio/jasmine-framework): become independant from expect-webdriverio (#14592)
* fix(@wdio/jasmine-framework): become independant from expect-webdriverio

* remove console.log

* get tests to work

* fix(ci): add eslint as dep

* fix tests

* run unit tests on Node.js 20, 22 and 24

* move @sveltejs/vite-plugin-svelte to browser runner

* remove usage of Node.js primitives in webdriver and webdriverio

* fix unit tests

* skip svelte test for now

* increase timeouts

* fix component test

* increase timeouts

* increase timeouts

* increase timeouts

* fix imageSize call
2025-07-08 12:51:42 -07:00
Agnes Au
96489ee4f2
fix(docs): correct typos and improve clarity in Best Practices guide (#14615) 2025-07-07 10:33:43 -07:00
Sindhu Pullapantula
97acfadd2d
Add URLs to Browserstack WebDriverIO services (#14614)
Provides direct links to the specific BrowserStack documentation for both App Automate (for app testing) and Automate (for web testing).
2025-07-06 20:30:00 -07:00
Simon Coen
caba3057cd
docs: add note about WebDriver Bidi support in url command (#14612) 2025-07-03 09:27:52 -07:00
Amiya Pattanaik
15436f087e
Update BoilerplateProjects.md (#14599)
renamed the project and added new one for ts version. these project Automatically generate WebdriverIO Page Object classes, AI/NLP-Driven Selector Name Inference and Mocha test specs from Gherkin `.feature` files.

1. wdio-testgen-from-gherkin-js
2. wdio-testgen-from-gherkin-ts
2025-07-01 13:49:15 -07:00
Jesse Hines
ba4d2c1e42
Add wdio-obsidian-service to docs and cli (#14606) 2025-07-01 13:41:58 -07:00
dependabot[bot]
62fed3a98d
chore(deps): bump the minor-deps-updates-main group across 1 directory with 2 updates (#14610)
Bumps the minor-deps-updates-main group with 2 updates in the / directory: [cheerio](https://github.com/cheeriojs/cheerio) and [htmlfy](https://github.com/j4w8n/htmlfy).


Updates `cheerio` from 1.0.0 to 1.1.0
- [Release notes](https://github.com/cheeriojs/cheerio/releases)
- [Commits](https://github.com/cheeriojs/cheerio/compare/v1.0.0...v1.1.0)

Updates `htmlfy` from 0.6.7 to 0.8.1
- [Release notes](https://github.com/j4w8n/htmlfy/releases)
- [Commits](https://github.com/j4w8n/htmlfy/compare/v0.6.7...v0.8.1)

---
updated-dependencies:
- dependency-name: cheerio
  dependency-version: 1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
- dependency-name: htmlfy
  dependency-version: 0.8.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates-main
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-01 13:40:03 -07:00
Christian Bromann
4eac63e4fd
chore(internal): remove cheerio types 2025-07-01 09:36:48 -07:00
Christian Bromann
3ac69325c8
chore(internal): update deps, fix unit tests 2025-07-01 09:31:03 -07:00
Christian Bromann
a7a592c4e3
fix(internal): fix husky script 2025-07-01 08:43:57 -07:00
Christian Bromann
d795807ca2
fix(@wdio/utils): linting issues 2025-07-01 08:43:34 -07:00
Christian Bromann
6d240d2198
fix(internal): update pnpm 2025-07-01 08:40:27 -07:00
mato533
9847c0f0c6
chore: replace asset to with at import statement (#14607) 2025-07-01 07:49:26 -07:00
dependabot[bot]
d6bd954f1c
chore(deps): bump lewagon/wait-on-check-action (#14603)
Bumps the minor-deps-updates group with 1 update: [lewagon/wait-on-check-action](https://github.com/lewagon/wait-on-check-action).


Updates `lewagon/wait-on-check-action` from 1.3.4 to 1.4.0
- [Release notes](https://github.com/lewagon/wait-on-check-action/releases)
- [Changelog](https://github.com/lewagon/wait-on-check-action/blob/master/CHANGELOG.md)
- [Commits](ccfb013c15...0dceb95e7c)

---
updated-dependencies:
- dependency-name: lewagon/wait-on-check-action
  dependency-version: 1.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-30 16:29:33 -07:00
Christian Bromann
95e3e718d3
internal(security): update policy (#14593) 2025-06-26 07:54:31 -07:00
Marcel
b32147470b
fix(mocha-framework): report spec load error as failure in after hook (#14506)
* fix(mocha-framework): report spec load error as failure

* test: additonal test for hook call with spec load error
2025-06-24 22:56:56 -07:00
WebdriverIO Release Bot
ff2154c00e v9.16.2 2025-06-23 19:10:14 +00:00
WebdriverIO Release Bot
faf5fce1f3 v9.16.1 2025-06-23 17:59:28 +00:00
Christian Bromann
5069c7e7ad
fix(ci): fix lock file 2025-06-23 10:56:53 -07:00
Christian Bromann
47020cdbf7
fix(*): fix peer dependencies 2025-06-23 10:02:37 -07:00
WebdriverIO Release Bot
a4539d01ae v9.16.0 2025-06-23 15:45:55 +00:00
dependabot[bot]
2bd07bcb32
chore(deps): bump actions/checkout in the minor-deps-updates group (#14583)
---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 4.2.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-deps-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 08:36:45 -07:00
dependabot[bot]
0aa5ec7799
chore(deps): bump pnpm/action-setup (#14584)
---
updated-dependencies:
- dependency-name: pnpm/action-setup
  dependency-version: a7487c7e89a18df4991f7f222e4898a00d66ddda
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-23 08:34:20 -07:00