Cross-browser testing is essential to ensure your website is functional on all popular browsers and this can be easily achieved using WebdriverIO. Let's take a look at how we can run our tests on Chrome and Firefox.

If you have set up your tests using WebdriverIO test runner then wdio-chromedriver-service will already be set up for you which will allow you to run tests on Chrome. If you have not set this up before, then you can watch the installation video to learn how to do this.

In addition, to run tests on Firefox you will need to install and configure geckodriver with your tests.

  • You can get the latest version downloaded from the link here.
  • Once downloaded, extract the file and store it in your tests root directory.
  • Update capabilities in the wdio.conf.js file -
  capabilities: [
    {
      browserName: 'chrome',
    },
    {
      browserName: 'firefox',
    },
  ],
  • Start geckodriver, you can do that by running the executable file that you downloaded ./geckodriver.exe
  • Now, run your tests npx wdio wdio.conf.js

That's all you need to run tests in both chrome and firefox. 🙌

Note: If you get binary location error when running your tests -

Expected browser binary location, but unable to find binary in the default location

Then, you will also have to provide the path of where the firefox is installed in your machine when you run geckodriver by passing the --binary flag. Ex: ./geckodriver.exe --binary 'C:/Program Files/Mozilla Firefox/firefox.exe'


Check out this video to see a detailed explanation on how to run your tests in multiple browsers:


To learn more about WebdriverIO, you can check out my free tutorial series here -

WebdriverIO - Tutorial Series for Beginners