
Product
Introducing Reports: An Extensible Reporting Framework for Socket Data
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.
wdio-chromedriver-service
Advanced tools
This service helps you to run ChromeDriver seamlessly when running tests with the WDIO testrunner. It uses the chromedriver NPM package that wraps the ChromeDriver for you.
Note: this service does not require a Selenium server, but uses ChromeDriver to communicate with the browser directly.
Obviously, it only supports:
capabilities: [{
browserName: 'chrome'
}]
The easiest way is to keep wdio-chromedriver-service as a devDependency in your package.json.
{
"devDependencies": {
"wdio-chromedriver-service": "^8.0.0"
}
}
You can simple do it by:
npm install wdio-chromedriver-service --save-dev
Note: You have to install chromedriver separately, as it's a peerDependency of this project, and you're free to choose what version to use. Depending of which version of Chrome you have installed on your system you should install the same version of chromedriver. Install it using:
npm install chromedriver --save-dev
# if you have Chrome 104 installed on your machine do
npm install chromedriver@104 --save-dev
Instructions on how to install WebdriverIO can be found here.
By design, only Google Chrome is available (when installed on the host system). In order to use the service you need to add chromedriver to your service array:
// wdio.conf.js
export.config = {
outputDir: 'all-logs',
// ...
services: [
['chromedriver', {
logFileName: 'wdio-chromedriver.log', // default
outputDir: 'driver-logs', // overwrites the config.outputDir
args: ['--silent']
}]
],
// ...
};
The port on which the driver should run on
Example: 7676
Type: number
The path on which the driver should run on
Example: /
Type: string
The protocol on which the driver should use
Example: http
Type: string
The protocol on which the driver should use
Example: localhost
Type: string
The startup timeout in ms, it checks if the port is open before starting ChromeDriver and then checks again if the it is closed after starting it.
Example: 10000
Type: number
The path where the output of the ChromeDriver server should be stored (uses the config.outputDir by default when not set).
Example: driver-logs
Type: string
The name of the log file to be written in outputDir.
Example: wdio-chromedriver.log
Type: string
To use a custome chromedriver different than the one installed through "chromedriver npm module", provide the path.
Example: /path/to/chromedriver (Linux / MacOS), ./chromedriver.exe or d:/driver/chromedriver.exe (Windows)
Type: string
For more information on WebdriverIO see the homepage.
FAQs
WebdriverIO service to start & stop ChromeDriver
We found that wdio-chromedriver-service demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.