Neverending Pile of Messages
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



    Get the return value of a JavaScript function on one or more Selenium-powered browsers.

    In order to use this locally, you'll need to install Selenium Server. webdriver-manager does this for you:

    npm i -g webdriver-manager
    webdriver-manager update
    webdriver-manager start

    Or you can use a cloud testing service, such as BrowserStack, Sauce Labs, or TestingBot. See the examples directory for usage.


    Install it with npm:

    npm install x-browser


    xbrowser(config[, done])

    Run the configuration and optionally call done(error, results) when finished with all browsers. This function returns a promise, so it's friendly with testing frameworks such as Mocha.


    For the most part, your configuration object can have any of the same properties that webdriverio expects, including:

    • desiredCapabilities (alias: browser or browsers) can either be an object with browserName, version, and other Selenium-compatible "desired capabilities"; or a descap-compatible shorthand string describing one or more browsers.
    • user and key may be used to provide credentials to cloud services such as Sauce Labs or BrowserStack.
    • host and port may be used to specify the Selenium Server hostname and port. If unspecified, the default hostname and port for Selenium Server are used.
    • logLevel may be 'silent', etc.

    The following configuration properties are specific to x-browser:

    • test should be a JavaScript function that will be run on each browser. This function may only access its own parameters and global variables in the browser scope, such as window and document. It must be synchronous.
    • arguments can be used to specify an array of up to 6 arguments to the test function. These arguments must be primitives, arrays, or object literals that can be serialized with JSON.stringify().


    The x-browser npm package installs a CLI tool, which you can learn more about with:

    x-browser --help


    npm i x-browser

    Downloadsweekly downloads








    last publish


    • avatar