TrustRadius: an HG Insights company

WebdriverIO

Score9 out of 10

9 Reviews and Ratings

What is WebdriverIO?

WebdriverIO, an OpenJS Foundation project, is a next-gen browser and mobile automation test framework for Node.js. It can be run on the WebDriver Protocol for true cross-browser testing as well as Chrome DevTools Protocol for Chromium based automation using Puppeteer.

WebdriverIO

Use Cases and Deployment Scope

Used WebdriverIO in our Automated Test Replaced our Manual test for Regression Testing & Pre-release testing Help QA team build knowledge in Automation using Selenium and WebdriverIO Framework.

Pros

  • Quick start when running the test, easy to maintain the framework.
  • Faster and has vast community support on the internet.
  • No need to Build an Automation framework from scratch.
  • Can be integrated with different services.

Cons

  • Standalone Report or logging could be useful.
  • Not integrated with AIO Test management tool from Atlassian.

Most Important Features

  • Maintainability.
  • Can be integrated with Docker.
  • Runs on multiple Browsers and in Multiple environments.
  • Can be integrated with different third-party report generators.

Return on Investment

  • Free and maintainability.
  • Easy to use and implement.

Alternatives Considered

Cypress

Other Software Used

Cypress.io, Cucumber Open, Postman

Automate using WebdriverIO - Its time to React !

Use Cases and Deployment Scope

We are using webdriverIO with typescript. We are using Reactjs for Front-end development. Our use-case is to automate multiple live sessions for different users like Teachers, Student, etc. So we have WebdriverIO for browser testing. I would like to test with WebdriverIO as we can select the way we like to interact with the browser whether it's web driver or DevTools. This is a framework that has a command-line interface (CLI) and a very flexible configuration.

Advantages I feel over other tools:

1.Easy project setup.

2.Flexible configuration.

3.Integration with other test automation tools out of box.

Pros

  • It allows to automate any application written with modern web frameworks such as React
  • It can be used to automate native mobile applications for Android and iOS.
  • The WebdriverIO testrunner comes with a command line interface that provides a nice configuration utility that helps to create config file in a minute.
  • It can run the commands both in sync and async modes.
  • It provides a set of commands that abstract away common interactions with an application like navigating, clicking, reading the state of an element.

Cons

  • Tasks written in this can only be debugged using the provided WDIO task runner
  • We cannot set breakpoints within tasks but have WDIO pause the run between commands.
  • It is not as customized as Protractor.
  • It deviates from generic syntax which may confuse selenium developers having knowledge of other languages.

Most Important Features

  • It has excellent API documentation
  • It has support for most BDD and TDD test frameworks.
  • It has a command-line interface-wdio which makes test configuration easy and simple.

Return on Investment

  • It helped in cross browser testing
  • It helped in automating multiple browsers at a time.
  • Code coverage is optimum as this supports Javascript(Typescript)

Alternatives Considered

Selenium

Other Software Used

Postman, Visual Studio IDE, AnyDesk, MongoDB

Webdriverio is a great place to start your web/mobile app testing!

Use Cases and Deployment Scope

We needed to find a solution for SaaS-based browser automation for a client of ours. Looking for a lightweight, easy-to-use tool that has all the integrations we need, and WDIO is that. It even has a great startup script that sets up most of those for you! Very easy to deploy and robust community support makes it simple to get going.

Pros

  • numerous integrations to tools
  • fast easy location of page elements
  • tool setup is amazing - they have a script to walk you through everything with prompts!!

Cons

  • integrations with reports (specifically allure) frameworks could be easier

Most Important Features

  • Ease/speed of development
  • Integrations
  • Robust feature set

Return on Investment

  • Haven't implemented in a live project yet

Alternatives Considered

Cypress.io and Selenium

WebdriverIO

Use Cases and Deployment Scope

For automating the web browser and native mobile applications we use WebdriverIO in my organization. WebdriverIO supports javascript and also is open-source which is very beneficial for the user. Basically, we use WebdriverIO for automating the ios application and It is very easy to use and also very easy to learn.

Pros

  • Automating Browser
  • Automating ios native application
  • Support javascripts

Cons

  • Only support Java scripts
  • Should support more languages
  • NA

Most Important Features

  • Supports App and browser both
  • addCommand function
  • Integrates Jenkins

Return on Investment

  • Frame supports
  • Integration for Jenkins
  • Only support JavaScripts

WebdriverIO - Easy setup, small learning curve and easy to scale tests

Use Cases and Deployment Scope

We use WebdriverIO as a bridge between the tests for our games and Saucelabs and their VMs/Devices. Tests are written in Javascript where we then have a middle layer that handles getting to the games on a browser to then execute those written tests. This way, test writers do not need to know how to trigger the tests on the devices they need and just specify it through parameters. WebdriverIO is used as the interface that takes these parameters and then launches the tests to Saucelabs

Pros

  • Most parameters are input in one place (wdio.conf)
  • Tests can be organised using a separate test execution framework like Mocha
  • Easy typescript transition

Cons

  • wdio.conf can contain too much where everything is encapsulated there, like the before and after functions
  • A data provider-like testing would be useful. The only way to input different data into the same test is via a loop
  • everything is needed to be done using the 'browser' object. Can be limiting where you don't have access to the browser depending on where you are in the code

Most Important Features

  • Easy integration with Saucelabs via sauce services
  • Easy integration with a separate test execution framework like jasmine or mocha - can pick and choose as needed

Return on Investment

  • Gives easy access to Saucelabs Devices and VMs to the frontend developers who don't have to fiddle around with connection to Saucelabs itself - so ROI on Saucelabs as webdriverIO is free
  • The small learning curve to actually get set up and running - our working framework was written in a few days

Alternatives Considered

Protractor