Skip to content

Commit 0242127

Browse files
committed
docs(website): support for WebdriverIO 9
1 parent 088d121 commit 0242127

File tree

16 files changed

+4225
-6249
lines changed

16 files changed

+4225
-6249
lines changed

docusaurus.config.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ const config: Config = {
111111
showReadingTime: true,
112112
blogSidebarTitle: 'Serenity/JS News',
113113
blogSidebarCount: 'ALL',
114+
onUntruncatedBlogPosts: 'ignore',
114115
},
115116
pages: {
116117
...remarkOptions,
@@ -154,15 +155,14 @@ const config: Config = {
154155
items: [
155156
{ label: 'Handbook', type: 'doc', docId: 'index', position: 'left' },
156157
{ label: 'API', to: '/api/', position: 'left' },
158+
{ to: '/blog', label: 'News', position: 'left' },
157159
{ label: `Releases`, to: 'releases', position: 'left' },
158160
{ to: '/community', label: 'Community', position: 'left' },
159161
{
160162
to: 'https://github.com/sponsors/serenity-js',
161-
label: 'Sponsors',
163+
label: 'Sponsor',
162164
position: 'left',
163165
},
164-
165-
{ to: '/blog', label: 'News', position: 'left' },
166166
{
167167
href: 'https://www.youtube.com/@serenity-js',
168168
'aria-label': 'Serenity/JS YouTube channel',
@@ -334,6 +334,13 @@ const config: Config = {
334334
adapter: { label: 'Test runner adapter', path: 'src/adapter/index.ts' },
335335
},
336336
},
337+
{
338+
path: './node_modules/@serenity-js/webdriverio-8',
339+
entry: {
340+
index: { label: 'index', path: 'src/index.ts' },
341+
adapter: { label: 'Test runner adapter', path: 'src/adapter/index.ts' },
342+
},
343+
},
337344

338345
{
339346
path: './node_modules/@serenity-js/rest',

package-lock.json

Lines changed: 3542 additions & 5797 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,20 +31,21 @@
3131
"@docusaurus/theme-mermaid": "3.6.3",
3232
"@giscus/react": "3.0.0",
3333
"@mdx-js/react": "3.1.0",
34-
"@serenity-js/assertions": "3.30.0",
35-
"@serenity-js/console-reporter": "3.30.0",
36-
"@serenity-js/core": "3.30.0",
37-
"@serenity-js/cucumber": "3.30.0",
38-
"@serenity-js/jasmine": "3.30.0",
39-
"@serenity-js/local-server": "3.30.0",
40-
"@serenity-js/mocha": "3.30.0",
41-
"@serenity-js/playwright": "3.30.0",
42-
"@serenity-js/playwright-test": "3.30.0",
43-
"@serenity-js/protractor": "3.30.0",
44-
"@serenity-js/rest": "3.30.0",
45-
"@serenity-js/serenity-bdd": "3.30.0",
46-
"@serenity-js/web": "3.30.0",
47-
"@serenity-js/webdriverio": "3.30.0",
34+
"@serenity-js/assertions": "3.31.0",
35+
"@serenity-js/console-reporter": "3.31.0",
36+
"@serenity-js/core": "3.31.0",
37+
"@serenity-js/cucumber": "3.31.0",
38+
"@serenity-js/jasmine": "3.31.0",
39+
"@serenity-js/local-server": "3.31.0",
40+
"@serenity-js/mocha": "3.31.0",
41+
"@serenity-js/playwright": "3.31.0",
42+
"@serenity-js/playwright-test": "3.31.0",
43+
"@serenity-js/protractor": "3.31.0",
44+
"@serenity-js/rest": "3.31.0",
45+
"@serenity-js/serenity-bdd": "3.31.0",
46+
"@serenity-js/web": "3.31.0",
47+
"@serenity-js/webdriverio": "3.31.0",
48+
"@serenity-js/webdriverio-8": "3.31.0",
4849
"clsx": "2.1.1",
4950
"docusaurus-plugin-sass": "0.2.6",
5051
"docusaurus-plugin-typedoc-api": "4.4.0",
@@ -79,6 +80,10 @@
7980
"last 5 safari version"
8081
]
8182
},
83+
"overrides": {
84+
"@wdio/cli": "^9.4.1",
85+
"webdriverio": "^9.4.1"
86+
},
8287
"engines": {
8388
"node": ">=18.0"
8489
}

redirects.config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ export default {
1818
{ from: '/handbook/about/installation/', to: '/handbook/getting-started/installation' },
1919
{ from: '/handbook/about/serenity-js-v3/', to: '/handbook/getting-started/upgrading-to-serenity-js-3' },
2020

21+
{ from: '/handbook/getting-started/serenity-js-with-webdriverio/', to: '/handbook/test-runners/webdriverio' },
22+
2123
// Old changelog
2224
{ from: '/changelog/', to: '/releases/' },
2325
{ from: '/changelog/3.24.0/', to: 'https://github.com/serenity-js/serenity-js/releases/tag/v3.24.0' },

src/blog/2023-05-10-support-for-webdriverio-8/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@ Now, we're taking things further with [**Serenity/JS 3.2.0**](https://github.com
1919

2020
Check out our new tutorial where in **less than 5 minutes**, you'll learn how to **integrate Serenity/JS** with your WebdriverIO test suite, **enable Serenity BDD reports**, and start using the **Screenplay Pattern**!
2121

22-
Learn about [Using Serenity/JS with WebdriverIO](/handbook/getting-started/serenity-js-with-webdriverio/)!
22+
Learn about [Using Serenity/JS with WebdriverIO](/handbook/test-runners/webdriverio/)!
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
slug: support-for-webdriverio-9
3+
title: Support for WebdriverIO 9
4+
authors: [jan-molak]
5+
tags:
6+
- core
7+
- webdriverio
8+
- web
9+
- open-source
10+
---
11+
12+
We’re thrilled to announce the release of Serenity/JS 3.31, marking a significant step forward for modern test automation.
13+
This release introduces support for **WebdriverIO 9**,
14+
while maintaining compatibility with **WebdriverIO 8** for projects that are not yet ready to migrate ([#2572](https://github.com/serenity-js/serenity-js/issues/2572)).
15+
16+
Let’s explore what makes this update exciting!
17+
18+
{/* truncate */}
19+
20+
:::tip New to Serenity/JS?
21+
New to Serenity/JS or test automation? Start with ["Your first web scenario"](/handbook/web-testing/your-first-web-scenario/),
22+
praised by our community as "the best guide to take your automation skills to the next level."
23+
:::
24+
25+
## New in Serenity/JS 3.31
26+
27+
### Support for WebdriverIO 9
28+
29+
The most notable new feature introduced by [WebdriverIO 9](https://webdriver.io/blog/2024/08/15/webdriverio-v9-release/) is support for the **WebDriver BiDi protocol**.
30+
This new protocol enables modern test automation capabilities like network request mocking and console log inspection,
31+
which will be progressively supported with dedicated Screenplay Pattern interactions in upcoming Serenity/JS releases.
32+
33+
Thanks to Serenity/JS being an [abstraction over WebdriverIO](/handbook/getting-started/architecture/) (and other [web integration tools](/api/web/)), upgrading to WebdriverIO 9 should require only a few simple configuration updates
34+
to replace the deprecated configuration properties.
35+
In most cases, no changes to test code are needed helping your team stay up-to-date with your tools while minimising the maintenance cost of your Serenity/JS-based frameworks.
36+
37+
We owe special thanks to [Christian Bromann](https://github.com/christian-bromann), Head of the WebdriverIO project, for supporting us in integrating Serenity/JS with this new release.
38+
39+
Thank you, Christian!
40+
41+
### Continued support for WebdriverIO 8
42+
43+
Serenity/JS continues to support WebdriverIO 8 via the new [`@serenity-js/webdriverio-8`](/api/webdriverio-8/) module, offering stability for teams not yet ready to upgrade.
44+
This ensures smooth transition without compromising existing projects.
45+
46+
### Brand new WebdriverIO guide
47+
48+
We've revised, simplified, and updated the [Serenity/JS WebdriverIO integration guide](/handbook/test-runners/webdriverio/) to reflect the latest changes, making it easier for you to get started with Serenity/JS and WebdriverIO 9.
49+
50+
### Updated WebdriverIO Project Templates
51+
52+
[Serenity/JS Project Templates](/handbook/getting-started/project-templates/) now default to WebdriverIO 9, making it easy for new projects to start with the latest features.
53+
54+
## Upgrading to Serenity/JS 3.31
55+
56+
To upgrade your existing project to **Serenity/JS 3.31** and **WebdriverIO 9**, follow our new [WebdriverIO 9 upgrade guide](/handbook/test-runners/webdriverio/#upgrading-to-webdriverio-9).
57+
58+
If you'd like to upgrade Serenity/JS but keep using **WebdriverIO 8**, follow these steps:
59+
- install the `@serenity-js/webdriverio-8` module instead of `@serenity-js/webdriverio`,
60+
- replace any imports of `@serenity-js/webdriverio` with `@serenity-js/webdriverio-8`.
61+
62+
## Your feedback matters!
63+
64+
I hope this latest release of Serenity/JS will make it even easier for you and your team to create high-quality test automation.
65+
66+
Let me know what you think of the new features in the [comments below](/blog/better-api-documentation/#giscus-comments) 👇👇👇
67+
68+
### 📣 Stay up to date
69+
70+
New features, tutorials, and demos are coming soon!
71+
Follow [Serenity/JS on LinkedIn](https://www.linkedin.com/company/serenity-js),
72+
subscribe to [Serenity/JS channel on YouTube](https://www.youtube.com/@serenity-js) and join the [Serenity/JS Community Chat](https://matrix.to/#/#serenity-js:gitter.im) to stay up to date!
73+
Please also make sure to star ⭐️ [Serenity/JS on GitHub](https://github.com/serenity-js/serenity-js) to help others discover the framework!
74+
75+
[![Follow Serenity/JS on LinkedIn](https://img.shields.io/badge/Follow-Serenity%2FJS%20-0077B5?logo=linkedin)](https://www.linkedin.com/company/serenity-js)
76+
[![Watch Serenity/JS on YouTube](https://img.shields.io/badge/Watch-@serenity--js-E62117?logo=youtube)](https://www.youtube.com/@serenity-js)
77+
[![Join Serenity/JS Community Chat](https://img.shields.io/badge/Chat-Serenity%2FJS%20Community-FBD30B?logo=matrix)](https://matrix.to/#/#serenity-js:gitter.im)
78+
[![GitHub stars](https://img.shields.io/github/stars/serenity-js/serenity-js?label=Serenity%2FJS&logo=github&style=badge)](https://github.com/serenity-js/serenity-js)
79+
80+
### 💛 Support Serenity/JS
81+
82+
If you appreciate all the effort that goes into making sophisticated tools easy to work with, please support our work and become a Serenity/JS GitHub Sponsor today!
83+
84+
[![GitHub Sponsors](https://img.shields.io/badge/Support%20@serenity%2FJS-703EC8?style=for-the-badge&logo=github&logoColor=white)](https://github.com/sponsors/serenity-js)

src/components/Home/Integrations/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export default function Integrations({ className }: IntegrationsProps): React.JS
5858
</p>
5959
<p className={ styles.cardActions }>
6060
<Link id="cta-homepage-webdirverio"
61-
to="/handbook/getting-started/serenity-js-with-webdriverio/">
61+
to="/handbook/test-runners/webdriverio/">
6262
Learn more
6363
</Link>
6464
</p>

src/config/PackageJsonParser.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ and the [Serenity/JS web testing tutorial](/handbook/web-testing/your-first-web-
124124
'@serenity-js/playwright',
125125
'@serenity-js/protractor',
126126
'@serenity-js/webdriverio',
127+
'@serenity-js/webdriverio-8',
127128
],
128129
},
129130
'REST API Testing': {

src/docs/handbook/design/screenplay-pattern.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ And so, Serenity/JS adapters for the following test runners will automatically g
281281
- [`TakeNotes`](/api/core/class/TakeNotes)
282282
- [WebdriverIO](/handbook/test-runners/webdriverio/) (with [Cucumber](/handbook/test-runners/cucumber), [Jasmine](/handbook/test-runners/jasmine), or [Mocha](/handbook/test-runners/mocha)):
283283
- [`BrowseTheWebWithWebdriverIO`](/api/webdriverio/class/BrowseTheWebWithWebdriverIO/),
284-
- [`CallAnApi`](/api/rest/class/CallAnApi) at [`baseUrl`](/api/webdriverio/interface/WebdriverIOConfig/#baseUrl) configured in the [WebdriverIO config file](https://webdriver.io/docs/configurationfile/),
284+
- [`CallAnApi`](/api/rest/class/CallAnApi) at [`baseUrl`](/api/webdriverio/#WebdriverIOConfig) configured in the [WebdriverIO config file](https://webdriver.io/docs/configurationfile/),
285285
- [`TakeNotes`](/api/core/class/TakeNotes)
286286
- [Protractor](/handbook/test-runners/protractor/) (with [Cucumber](/handbook/test-runners/cucumber), [Jasmine](/handbook/test-runners/jasmine), or [Mocha](/handbook/test-runners/mocha)):
287287
- [`BrowseTheWebWithProtractor`](/api/protractor/class/BrowseTheWebWithProtractor/),

src/docs/handbook/getting-started/index.mdx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,11 @@ you **safely** and **progressively modernise existing codebases**!
2424
In the second part of this chapter, I'll show you **how to add Serenity/JS** to an existing automation project and you'll learn about:
2525
- [**Using Serenity/JS with Playwright Test**](/handbook/getting-started/serenity-js-with-playwright-test/)
2626
- [**Using Serenity/JS with Protractor**](/handbook/getting-started/serenity-js-with-protractor/)
27-
- [**Using Serenity/JS with WebdriverIO**](/handbook/getting-started/serenity-js-with-webdriverio/)
27+
28+
:::info Updates are coming!
29+
We're consolidating this part of the Serenity/JS Handbook to make it easier for you to find the information you need all in one place.
30+
If you're interested in WebdriverIO, check out our brand new guide on [**Using Serenity/JS with WebdriverIO**](/handbook/test-runners/webdriverio/)
31+
:::
2832

2933
## Upgrading from Serenity/JS 2
3034

0 commit comments

Comments
 (0)