Installations
npm install @rpai/webdriverio
Developer Guide
Typescript
Yes
Module System
CommonJS, ESM
Min. Node Version
^16.13 || >=18
Node Version
20.15.0
NPM Version
10.7.0
Score
39.8
Supply Chain
74.7
Quality
75
Maintenance
50
Vulnerability
93.6
License
Releases
Contributors
Languages
TypeScript (94.46%)
JavaScript (3.3%)
EJS (1.45%)
CSS (0.68%)
Gherkin (0.06%)
Dockerfile (0.03%)
Vue (0.01%)
Love this project? Help keep it running — sponsor us today! 🚀
Developer
Download Statistics
Total Downloads
1,743
Last Day
1
Last Week
8
Last Month
38
Last Year
1,743
GitHub Statistics
MIT License
9,182 Stars
7,802 Commits
2,538 Forks
215 Watchers
31 Branches
618 Contributors
Updated on Feb 13, 2025
Package Meta Information
Latest Version
1.0.5
Package Id
@rpai/webdriverio@1.0.5
Unpacked Size
1.22 MB
Size
239.03 kB
File Count
556
NPM Version
10.7.0
Node Version
20.15.0
Published on
Sep 27, 2024
Total Downloads
Cumulative downloads
Total Downloads
1,743
Last Day
-66.7%
1
Compared to previous day
Last Week
-60%
8
Compared to previous week
Last Month
18.8%
38
Compared to previous month
Last Year
0%
1,743
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
Dependencies
24
Peer Dependencies
1
WebdriverIO
Next-gen browser and mobile automation test framework for Node.js
This package provides an easy-to-manage API and a lot of syntactical sugar on top of the WebDriver specification. You can use WebdriverIO as a standalone package or via a test runner using @wdio/cli
. WebdriverIO allows you to run tests locally using the WebDriver or Chrome DevTools protocol as well as remote user agents using cloud providers like Sauce Labs.
Installation
You can install WebdriverIO via NPM:
1npm install webdriverio
Usage
WebdriverIO by default uses Puppeteer to automate a browser like Chrome, Firefox or Chromium Edge. So if you have Chrome installed, the following script should start a browser for you and get the title of the page:
1import { remote } from 'webdriverio' 2 3const browser = await remote({ 4 capabilities: { browserName: 'chrome' } 5}) 6 7await browser.navigateTo('https://www.google.com/ncr') 8 9const searchInput = await browser.$('#lst-ib') 10await searchInput.setValue('WebdriverIO') 11 12const searchBtn = await browser.$('input[value="Google Search"]') 13await searchBtn.click() 14 15console.log(await browser.getTitle()) // outputs "WebdriverIO - Google Search" 16 17await browser.deleteSession()
See the raw protocol example using the webdriver
package to get a glance at the differences.
For more information on options, multiremote usage or integration into cloud services please check out the docs.

No vulnerabilities found.
Reason
30 commit(s) and 17 issue activity found in the last 90 days -- score normalized to 10
Reason
security policy file detected
Details
- Info: security policy file detected: .github/SECURITY.md:1
- Info: Found linked content: .github/SECURITY.md:1
- Info: Found disclosure, vulnerability, and/or timelines in security policy: .github/SECURITY.md:1
- Info: Found text in security policy: .github/SECURITY.md:1
Reason
no dangerous workflow patterns detected
Reason
license file detected
Details
- Info: project has a license file: LICENSE:0
- Info: FSF or OSI recognized license: MIT License: LICENSE:0
Reason
binaries present in source code
Details
- Warn: binary detected: e2e/browser-runner/wasm/add.wasm:1
Reason
badge detected: Passing
Reason
Found 9/23 approved changesets -- score normalized to 3
Reason
dependency not pinned by hash detected -- score normalized to 2
Details
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/authorize.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/authorize.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/expense.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/expense.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/publish.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/publish.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-cloud.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/test-cloud.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-component.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/test-component.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-launch.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/test-launch.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-multiremote.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/test-multiremote.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test-testrunner.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/test-testrunner.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/update.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/update.yaml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/update.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/webdriverio/webdriverio/update.yaml/main?enable=pin
- Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:1: pin your Docker image by updating mcr.microsoft.com/devcontainers/javascript-node:0-18 to mcr.microsoft.com/devcontainers/javascript-node:0-18@sha256:ed57dd8755b4e75a0426bd10ab1d3a60a22bb21fc2e093801375990978c42fb5
- Warn: containerImage not pinned by hash: .gitpod/dev.dockerfile:1: pin your Docker image by updating gitpod/workspace-node to gitpod/workspace-node@sha256:efb5a80c171761d1584ded29524bb629e294ac29082ff3fe3ab0f1e045fa475b
- Warn: npmCommand not pinned by hash: .devcontainer/Dockerfile:22-26
- Warn: npmCommand not pinned by hash: .gitpod/dev.dockerfile:14-15
- Info: 17 out of 24 GitHub-owned GitHubAction dependencies pinned
- Info: 0 out of 5 third-party GitHubAction dependencies pinned
- Info: 0 out of 2 containerImage dependencies pinned
- Info: 0 out of 2 npmCommand dependencies pinned
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Warn: jobLevel 'contents' permission set to 'write': .github/workflows/expense.yml:45
- Warn: jobLevel 'contents' permission set to 'write': .github/workflows/publish.yml:36
- Warn: no topLevel permission defined: .github/workflows/authorize.yml:1
- Warn: no topLevel permission defined: .github/workflows/build.yml:1
- Warn: no topLevel permission defined: .github/workflows/cr.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/deploy.yml:8
- Warn: no topLevel permission defined: .github/workflows/expense.yml:1
- Warn: no topLevel permission defined: .github/workflows/labeler.yml:1
- Warn: no topLevel permission defined: .github/workflows/publish.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-cloud.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-component.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-interop.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-launch.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-multiremote.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-smoke.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-standalone.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-static.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-testrunner.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-typings.yml:1
- Warn: no topLevel permission defined: .github/workflows/test-unit.yml:1
- Warn: no topLevel permission defined: .github/workflows/test.yml:1
- Warn: topLevel 'contents' permission set to 'write': .github/workflows/update.yaml:11
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
- Warn: 0 commits out of 21 are checked with a SAST tool
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
16 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x
- Warn: Project is vulnerable to: GHSA-pfrx-2q88-qq97
- Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw
- Warn: Project is vulnerable to: GHSA-c76h-2ccp-4975
- Warn: Project is vulnerable to: GHSA-qwcr-r2fm-qrc7
- Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275
- Warn: Project is vulnerable to: GHSA-qw6h-vgh9-j6wx
- Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv
- Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55
- Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j
- Warn: Project is vulnerable to: GHSA-rhx6-c78j-4q9w
- Warn: Project is vulnerable to: GHSA-gcx4-mw62-g8wm
- Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg
- Warn: Project is vulnerable to: GHSA-cm22-4g7w-348p
- Warn: Project is vulnerable to: GHSA-4vvj-4cpr-p986
- Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q
Score
5
/10
Last Scanned on 2025-02-03
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn MoreOther packages similar to @rpai/webdriverio
@rpai/wdio-utils
A WDIO helper utility to provide several utility functions used across the project.
@rpai/wdio-logger
A helper utility for logging of WebdriverIO packages
@rpai/wdio-config
A helper utility to parse and validate WebdriverIO options
@rpai/wdio-types
Utility package providing type information for a variety of WebdriverIO interfaces