This library is a webdriver
(browser automation) module for Node.JS. It makes it possible to write
super easy Selenium tests in your favorite
BDD/TDD test framework, that will run locally or in the cloud using Sauce Labs, BrowserStack or TestingBot.
WebdriverIO is agnostic with regards to the test framework you want to use. Cucumber, Jasmine and Mocha+Chai are supported by the configuration wizard, and you can use other frameworks as well - for example Yadda.
WebdriverIO alternatives and similar libraries
Based on the "Testing Frameworks" category
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of WebdriverIO or a related project?
Next-gen browser automation test automation framework for Node.js
Homepage | Developer Guide | API Reference | Contribute | Changelog | Roadmap
WebdriverIO is a test automation framework that allows you to run tests based on the Webdriver protocol and Appium automation technology. It provides support for your favorite BDD/TDD test framework and will run your tests locally or in the cloud using Sauce Labs, BrowserStack, TestingBot or LambdaTest.
You like WebdriverIO and want to help making it better? Awesome! Have a look into our [Contributor Guide](docs/Contribute.md) and check out our [Contributor Documentation](CONTRIBUTING.md) to get started with setting up the repo.
- webdriver - A Node.js bindings implementation for the W3C WebDriver and Mobile JSONWire Protocol
- devtools - A Chrome DevTools protocol binding that maps WebDriver commands into Chrome DevTools commands using Puppeteer
- webdriverio - A next-gen browser automation test automation framework for Node.js
- @wdio/cli - A WebdriverIO testrunner command line interface
- @wdio/config - A helper utility to parse and validate WebdriverIO options
- @wdio/logger - A helper utility for logging of WebdriverIO packages
- @wdio/protocols - Utility package providing information about automation protocols
- @wdio/repl - A WDIO helper utility to provide a repl interface for WebdriverIO
- @wdio/reporter - A WebdriverIO utility to help reporting all events
- @wdio/runner - A WebdriverIO service that runs tests in arbitrary environments
- @wdio/sync - A WebdriverIO plugin. Helper module to run WebdriverIO commands synchronously
- @wdio/utils - A WDIO helper utility to provide several utility functions used across the project
- @wdio/allure-reporter - A WebdriverIO reporter plugin to create Allure Test Reports
- @wdio/concise-reporter - A WebdriverIO reporter plugin to create concise test reports
- @wdio/dot-reporter - A WebdriverIO plugin to report in dot style
- @wdio/junit-reporter - A WebdriverIO reporter that creates test results in XML format
- @wdio/spec-reporter - A WebdriverIO plugin to report in spec style
- @wdio/sumologic-reporter - A WebdriverIO reporter that sends test results to Sumologic for data analyses
- @wdio/appium-service - A WebdriverIO service to start & stop Appium Server
- @wdio/applitools-service - A WebdriverIO service for visual regression testing using Applitools
- @wdio/browserstack-service - A WebdriverIO service that provides a better integration into Browserstack
- @wdio/crossbrowsertesting-service - A WebdriverIO service that provides a better integration into CrossBrowserTesting
- @wdio/devtools-service - A WebdriverIO service that allows you to run Chrome DevTools commands in your tests
- @wdio/firefox-profile-service - A WebdriverIO service that lets you define your Firefox profile in your wdio.conf.js
- @wdio/sauce-service - A WebdriverIO service that provides a better integration into SauceLabs
- @wdio/selenium-standalone-service - A WebdriverIO service that automatically sets up a selenium standalone server
- @wdio/shared-store-service - A WebdriverIO service to exchange data across processes
- @wdio/testingbot-service - A WebdriverIO service that provides a better integration into TestingBot
- @wdio/local-runner - A WebdriverIO runner to run tests locally
- @wdio/lambda-runner - A WebdriverIO plugin that allows you to run tests on Lambda functions (experimental)
- @wdio/cucumber-framework - Adapter for Cucumber testing framework
- @wdio/jasmine-framework - Adapter for Jasmine testing framework
- @wdio/mocha-framework - Adapter for Mocha testing framework.
- eslint-plugin-wdio - Eslint rules for WebdriverIO
- @wdio/smoke-test-reporter - A WebdriverIO utility to smoke test reporters for internal testing purposes
- @wdio/smoke-test-service - A WebdriverIO utility to smoke test services for internal testing purposes
- @wdio/webdriver-mock-service - A WebdriverIO service to stub all endpoints for internal testing purposes
[![tested with webdriver.io](https://img.shields.io/badge/tested%20with-webdriver.io-%23ea5906)](https://webdriver.io/)
<a href="https://webdriver.io/"> <img alt="WebdriverIO" src="https://img.shields.io/badge/tested%20with-webdriver.io-%23ea5906"> </a>
*Note that all licence references and agreements mentioned in the WebdriverIO README section above are relevant to that project's source code only.