Next-gen WebDriver test automation framework for Node.js
Homepage | Developer Guide | API Reference | Contribute
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 or TestingBot.
Contributing
Check out our CONTRIBUTING.md to get started with setting up the repo.
If you're looking for issues to help out with, check out the issues labelled "good first pick". You can also reach out in our Gitter Channel if you have question on where to start contributing.
Packages
Core
- webdriver - A Node.js bindings implementation for the W3C WebDriver and Mobile JSONWire Protocol
- webdriverio - A next-gen WebDriver test automation framework for Node.js
- @wdio/cli - A WebdriverIO testrunner command line interface
Helper
- @wdio/config - A helper utility to parse and validate WebdriverIO options
- @wdio/logger - A helper utility for logging of WebdriverIO packages
- @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/repl - A WDIO helper utility to provide a repl interface for WebdriverIO
- @wdio/utils - A WDIO helper utility to provide several utility functions used across the project
Reporter
- @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/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/junit-reporter - A WebdriverIO reporter that creates test results in XML format
Services
- @wdio/appium-service - A WebdriverIO service to start & stop Appium Server
- @wdio/applitools-service - A WebdriverIO service for visual regression testing using Applitools
- @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/testingbot-service - A WebdriverIO service that provides a better integration into TestingBot
- @wdio/selenium-standalone-service - A WebdriverIO service that automatically sets up a selenium standalone server
- @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
Runner
- @wdio/local-runner - A WebdriverIO runner to run tests locally
- @wdio/lambda-runner - A WebdriverIO plugin that allows you to run tests on AWS using Lambda functions
Framework Adapters
- @wdio/mocha-framework - Adapter for Mocha testing framework.
- @wdio/jasmine-framework - Adapter for Jasmine testing framework
Others
- eslint-plugin-wdio - Eslint rules for WebdriverIO
- @wdio/webdriver-mock-service - A WebdriverIO service to stub all endpoints for internal testing purposes
- @wdio/smoke-test-service - A WebdriverIO utility to smoke test services for internal testing purposes