Wondering what’s next for npm?Check out our public roadmap! »

    TypeScript icon, indicating that this package has built-in type declarations

    7.5.7 • Public • Published

    WebdriverIO Browserstack Service

    A WebdriverIO service that manages local tunnel and job metadata for Browserstack users.


    The easiest way is to keep @wdio/browserstack-service as a devDependency in your package.json.

        "devDependencies": {
            "@wdio/browserstack-service": "^6.1.15"

    You can simple do it by:

    npm install @wdio/browserstack-service --save-dev

    Instructions on how to install WebdriverIO can be found here.


    WebdriverIO has Browserstack support out of the box. You should simply set user and key in your wdio.conf.js file. This service plugin provides supports for Browserstack Tunnel. Set browserstackLocal: true also to activate this feature. Reporting of session status on BrowserStack will respect strict setting of Cucumber options.

    // wdio.conf.js
    export.config = {
        // ...
        user: process.env.BROWSERSTACK_USERNAME,
        key: process.env.BROWSERSTACK_ACCESS_KEY,
        services: [
            ['browserstack', {
                browserstackLocal: true
        // ...


    In order to authorize to the BrowserStack service your config needs to contain a user and key option.


    Set this to true to enable routing connections from Browserstack cloud through your computer. You will also need to set browserstack.local to true in browser capabilities.

    Type: Boolean
    Default: false


    Cucumber only. Set this to true to enable updating the session name to the Scenario name if only a single Scenario was ran. Useful when running in parallel with wdio-cucumber-parallel-execution.

    Type: Boolean
    Default: false


    Set this to true to kill the browserstack process on complete, without waiting for the browserstack stop callback to be called. This is experimental and should not be used by all. Mostly necessary as a workaraound for this issue.

    Type: Boolean
    Default: false


    Specified optional will be passed down to BrowserstackLocal. See this list for details.

    Type: Object
    Default: {}

    Known Issues

    • It's more of how webdriverio desigend the multi-process model. It is extremely hard if not impossible to reliable transfer localIdentifier to child-processes. We recommend to use it without the identifier at this moment, which will create an account-wide local tunnel.

    For more information on WebdriverIO see the homepage.


    npm i @wdio/browserstack-service

    DownloadsWeekly Downloads






    Unpacked Size

    32.5 kB

    Total Files


    Last publish


    • avatar
    • avatar
    • avatar