@serenity-js/webdriverio-8 3.34.1 → 3.35.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/esm/screenplay/models/locators/WebdriverIOLocator.d.ts.map +1 -1
- package/esm/screenplay/models/locators/WebdriverIOLocator.js +6 -1
- package/esm/screenplay/models/locators/WebdriverIOLocator.js.map +1 -1
- package/lib/screenplay/models/locators/WebdriverIOLocator.d.ts.map +1 -1
- package/lib/screenplay/models/locators/WebdriverIOLocator.js +5 -0
- package/lib/screenplay/models/locators/WebdriverIOLocator.js.map +1 -1
- package/package.json +8 -8
- package/src/screenplay/models/locators/WebdriverIOLocator.ts +7 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.35.0](https://github.com/serenity-js/serenity-js/compare/v3.34.2...v3.35.0) (2025-09-07)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **web:** support for identifying page elements by their ARIA role ([cf3672a](https://github.com/serenity-js/serenity-js/commit/cf3672a6fe3051eab9c195f2f342ebf55c19e2d6))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## [3.34.2](https://github.com/serenity-js/serenity-js/compare/v3.34.1...v3.34.2) (2025-09-07)
|
|
18
|
+
|
|
19
|
+
**Note:** Version bump only for package @serenity-js/webdriverio-8
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
6
25
|
## [3.34.1](https://github.com/serenity-js/serenity-js/compare/v3.34.0...v3.34.1) (2025-08-20)
|
|
7
26
|
|
|
8
27
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebdriverIOLocator.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"WebdriverIOLocator.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAA2E,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEpH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAI7E;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAKpE,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAF7B,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,EACxC,QAAQ,EAAE,QAAQ,EACD,YAAY,EAAE,uBAAuB;IAM1D,SAAS,CAAC,cAAc,IAAI,MAAM;IAkC5B,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAU7B,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;cASnC,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;IAgB9D,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAK9D,EAAE,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAIpE,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAI1E,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAIvE,OAAO,IAAI,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC;IAIrC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;CAcxE;AAED;;GAEG;AACH,qBAAa,iCAAkC,SAAQ,kBAAkB;IAKjE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAHtC,UAAU,EAAE,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,EAC5C,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,uBAAuB,EACpB,qBAAqB,EAAE,WAAW,CAAC,OAAO;IAKzD,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;IAI7C,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;CAGjE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import 'webdriverio';
|
|
2
2
|
import { f, LogicError } from '@serenity-js/core';
|
|
3
|
-
import { ByCss, ByCssContainingText, ByDeepCss, ById, ByTagName, ByXPath, Locator } from '@serenity-js/web';
|
|
3
|
+
import { ByCss, ByCssContainingText, ByDeepCss, ById, ByRole, ByTagName, ByXPath, Locator } from '@serenity-js/web';
|
|
4
4
|
import { WebdriverIOPageElement } from '../WebdriverIOPageElement.js';
|
|
5
5
|
/**
|
|
6
6
|
* WebdriverIO-specific implementation of [`Locator`](https://serenity-js.org/api/web/class/Locator/).
|
|
@@ -27,6 +27,11 @@ export class WebdriverIOLocator extends Locator {
|
|
|
27
27
|
if (this.selector instanceof ById) {
|
|
28
28
|
return `#${this.selector.value}`;
|
|
29
29
|
}
|
|
30
|
+
if (this.selector instanceof ByRole) {
|
|
31
|
+
return this.selector.options.name && typeof this.selector.options.name === 'string'
|
|
32
|
+
? `aria/${this.selector.options.name}`
|
|
33
|
+
: `[role=${this.selector.value}]`;
|
|
34
|
+
}
|
|
30
35
|
if (this.selector instanceof ByTagName) {
|
|
31
36
|
return `<${this.selector.value} />`;
|
|
32
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebdriverIOLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"WebdriverIOLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebdriverIOLocator.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"WebdriverIOLocator.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAA2E,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAEpH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAI7E;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAKpE,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAF7B,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,EACxC,QAAQ,EAAE,QAAQ,EACD,YAAY,EAAE,uBAAuB;IAM1D,SAAS,CAAC,cAAc,IAAI,MAAM;IAkC5B,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAU7B,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;cASnC,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;IAgB9D,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAK9D,EAAE,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAIpE,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAI1E,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC;IAIvE,OAAO,IAAI,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC;IAIrC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;CAcxE;AAED;;GAEG;AACH,qBAAa,iCAAkC,SAAQ,kBAAkB;IAKjE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAHtC,UAAU,EAAE,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,EAC5C,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,uBAAuB,EACpB,qBAAqB,EAAE,WAAW,CAAC,OAAO;IAKzD,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;IAI7C,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;CAGjE"}
|
|
@@ -30,6 +30,11 @@ class WebdriverIOLocator extends web_1.Locator {
|
|
|
30
30
|
if (this.selector instanceof web_1.ById) {
|
|
31
31
|
return `#${this.selector.value}`;
|
|
32
32
|
}
|
|
33
|
+
if (this.selector instanceof web_1.ByRole) {
|
|
34
|
+
return this.selector.options.name && typeof this.selector.options.name === 'string'
|
|
35
|
+
? `aria/${this.selector.options.name}`
|
|
36
|
+
: `[role=${this.selector.value}]`;
|
|
37
|
+
}
|
|
33
38
|
if (this.selector instanceof web_1.ByTagName) {
|
|
34
39
|
return `<${this.selector.value} />`;
|
|
35
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebdriverIOLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":";;;AAAA,uBAAqB;AAErB,4CAAkD;AAElD,
|
|
1
|
+
{"version":3,"file":"WebdriverIOLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/WebdriverIOLocator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serenity-js/webdriverio-8",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.35.0",
|
|
4
4
|
"description": "Adapter that integrates @serenity-js/web with WebdriverIO 8, enabling Serenity/JS reporting and using the Screenplay Pattern to write web and mobile test scenarios",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Jan Molak",
|
|
@@ -74,9 +74,9 @@
|
|
|
74
74
|
"node": "^18.12 || ^20 || ^22"
|
|
75
75
|
},
|
|
76
76
|
"dependencies": {
|
|
77
|
-
"@serenity-js/core": "3.
|
|
78
|
-
"@serenity-js/rest": "3.
|
|
79
|
-
"@serenity-js/web": "3.
|
|
77
|
+
"@serenity-js/core": "3.35.0",
|
|
78
|
+
"@serenity-js/rest": "3.35.0",
|
|
79
|
+
"@serenity-js/web": "3.35.0",
|
|
80
80
|
"@wdio/reporter": "8.43.0",
|
|
81
81
|
"deepmerge": "4.3.1",
|
|
82
82
|
"tiny-types": "1.24.1"
|
|
@@ -111,12 +111,12 @@
|
|
|
111
111
|
"axios": "1.11.0",
|
|
112
112
|
"c8": "10.1.3",
|
|
113
113
|
"cross-env": "10.0.0",
|
|
114
|
-
"mocha": "11.7.
|
|
114
|
+
"mocha": "11.7.2",
|
|
115
115
|
"mocha-multi": "1.1.7",
|
|
116
116
|
"mocha-testdata": "1.2.0",
|
|
117
|
-
"puppeteer-core": "24.
|
|
118
|
-
"start-server-and-test": "2.0
|
|
117
|
+
"puppeteer-core": "24.19.0",
|
|
118
|
+
"start-server-and-test": "2.1.0",
|
|
119
119
|
"webdriverio": "8.46.0"
|
|
120
120
|
},
|
|
121
|
-
"gitHead": "
|
|
121
|
+
"gitHead": "b87c48f8c67c0a51173cd5c29eb6e8599ca131ca"
|
|
122
122
|
}
|
|
@@ -2,7 +2,7 @@ import 'webdriverio';
|
|
|
2
2
|
|
|
3
3
|
import { f, LogicError } from '@serenity-js/core';
|
|
4
4
|
import type { PageElement, RootLocator, Selector } from '@serenity-js/web';
|
|
5
|
-
import { ByCss, ByCssContainingText, ByDeepCss, ById, ByTagName, ByXPath, Locator } from '@serenity-js/web';
|
|
5
|
+
import { ByCss, ByCssContainingText, ByDeepCss, ById, ByRole, ByTagName, ByXPath, Locator } from '@serenity-js/web';
|
|
6
6
|
|
|
7
7
|
import type { WebdriverIOErrorHandler } from '../WebdriverIOErrorHandler.js';
|
|
8
8
|
import { WebdriverIOPageElement } from '../WebdriverIOPageElement.js';
|
|
@@ -41,6 +41,12 @@ export class WebdriverIOLocator extends Locator<WebdriverIO.Element, string> {
|
|
|
41
41
|
return `#${ this.selector.value }`;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
+
if (this.selector instanceof ByRole) {
|
|
45
|
+
return this.selector.options.name && typeof this.selector.options.name === 'string'
|
|
46
|
+
? `aria/${ this.selector.options.name }`
|
|
47
|
+
: `[role=${ this.selector.value }]`;
|
|
48
|
+
}
|
|
49
|
+
|
|
44
50
|
if (this.selector instanceof ByTagName) {
|
|
45
51
|
return `<${ this.selector.value } />`;
|
|
46
52
|
}
|