Alternatives to WebdriverIO logo

Alternatives to WebdriverIO

Selenium, Protractor, Puppeteer, Nightwatchjs, and Cypress are the most popular alternatives and competitors to WebdriverIO.
201
373
+ 1
36

What is WebdriverIO and what are its top alternatives?

WebdriverIO lets you control a browser or a mobile application with just a few lines of code. Your test code will look simple, concise and easy to read.
WebdriverIO is a tool in the Browser Testing category of a tech stack.
WebdriverIO is an open source tool with 7.1K GitHub stars and 2K GitHub forks. Here’s a link to WebdriverIO's open source repository on GitHub

Top Alternatives to WebdriverIO

  • Selenium

    Selenium

    Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) also be automated as well. ...

  • Protractor

    Protractor

    Protractor is an end-to-end test framework for Angular and AngularJS applications. Protractor runs tests against your application running in a real browser, interacting with it as a user would. ...

  • Puppeteer

    Puppeteer

    Puppeteer is a Node library which provides a high-level API to control headless Chrome over the DevTools Protocol. It can also be configured to use full (non-headless) Chrome. ...

  • Nightwatchjs

    Nightwatchjs

    Nightwatch.js is an easy to use Node.js based End-to-End (E2E) testing solution for browser based apps and websites. It uses the powerful Selenium WebDriver API to perform commands and assertions on DOM elements. ...

  • Cypress

    Cypress

    Cypress is a front end automated testing application created for the modern web. Cypress is built on a new architecture and runs in the same run-loop as the application being tested. As a result Cypress provides better, faster, and more reliable testing for anything that runs in a browser. Cypress works on any front-end framework or website. ...

  • TestCafe

    TestCafe

    It is a pure node.js end-to-end solution for testing web apps. It takes care of all the stages: starting browsers, running tests, gathering test results and generating reports. ...

  • Jest

    Jest

    Jest provides you with multiple layers on top of Jasmine.

  • BrowserStack

    BrowserStack

    BrowserStack is a leading software testing platform for developers to comprehensively test their websites and mobile applications across 2,000+ real browsers and devices in a single cloud platform—and at scale. ...

WebdriverIO alternatives & related posts

Selenium logo

Selenium

10.9K
8.4K
519
Web Browser Automation
10.9K
8.4K
+ 1
519
PROS OF SELENIUM
  • 169
    Automates browsers
  • 154
    Testing
  • 101
    Essential tool for running test automation
  • 24
    Record-Playback
  • 24
    Remote Control
  • 8
    Data crawling
  • 7
    Supports end to end testing
  • 6
    Functional testing
  • 6
    Easy set up
  • 4
    The Most flexible monitoring system
  • 3
    Easy to integrate with build tools
  • 3
    End to End Testing
  • 2
    Integration Tests
  • 2
    Comparing the performance selenium is faster than jasm
  • 2
    Record and playback
  • 2
    Compatible with Python
  • 2
    Easy to scale
  • 0
    Integrated into Selenium-Jupiter framework
CONS OF SELENIUM
  • 7
    Flaky tests
  • 2
    Slow as needs to make browser (even with no gui)

related Selenium posts

Kamil Kowalski
Lead Architect at Fresha · | 27 upvotes · 1.2M views

When you think about test automation, it’s crucial to make it everyone’s responsibility (not just QA Engineers'). We started with Selenium and Java, but with our platform revolving around Ruby, Elixir and JavaScript, QA Engineers were left alone to automate tests. Cypress was the answer, as we could switch to JS and simply involve more people from day one. There's a downside too, as it meant testing on Chrome only, but that was "good enough" for us + if really needed we can always cover some specific cases in a different way.

See more
Benjamin Poon
QA Manager - Engineering at HBC Digital · | 8 upvotes · 747.3K views

For our digital QA organization to support a complex hybrid monolith/microservice architecture, our team took on the lofty goal of building out a commonized UI test automation framework. One of the primary requisites included a technical minimalist threshold such that an engineer or analyst with fundamental knowledge of JavaScript could automate their tests with greater ease. Just to list a few: - Nightwatchjs - Selenium - Cucumber - GitHub - Go.CD - Docker - ExpressJS - React - PostgreSQL

With this structure, we're able to combine the automation efforts of each team member into a centralized repository while also providing new relevant metrics to business owners.

See more
Protractor logo

Protractor

410
465
32
End-to-end test framework for Angular and AngularJS applications
410
465
+ 1
32
PROS OF PROTRACTOR
  • 9
    Easy setup
  • 8
    Quick tests implementation
  • 5
    Flexible
  • 5
    Open source
  • 5
    Promise support
CONS OF PROTRACTOR
  • 3
    Limited

related Protractor posts

Raziel Alron
Automation Engineer at Tipalti · | 7 upvotes · 139.4K views

Currently, we are using Protractor in our project. Since Protractor isn't updated anymore, we are looking for a new tool. The strongest suggestions are WebdriverIO or Puppeteer. Please help me figure out what tool would make the transition fastest and easiest. Please note that Protractor uses its own locator system, and we want the switch to be as simple as possible. Thank you!

See more
Sai Chaitanya Mankala
Tech Lead at KIOT Innovations · | 5 upvotes · 38.1K views

Protractor or Cypress for ionic-angular?

We have a huge ionic-angular app with almost 100 pages and 10+ injectables. There are no tests written yet. Before we start, we need some suggestions about the framework. Would you suggest Cypress or Angular's Protractor with Jasmine / Karma for a heavy ionic app with Angular?

See more
Puppeteer logo

Puppeteer

330
455
24
Headless Chrome Node API
330
455
+ 1
24
PROS OF PUPPETEER
  • 9
    Scriptable web browser
  • 9
    Very well documented
  • 6
    Promise based
CONS OF PUPPETEER
  • 9
    Chrome only

related Puppeteer posts

Raziel Alron
Automation Engineer at Tipalti · | 7 upvotes · 139.4K views

Currently, we are using Protractor in our project. Since Protractor isn't updated anymore, we are looking for a new tool. The strongest suggestions are WebdriverIO or Puppeteer. Please help me figure out what tool would make the transition fastest and easiest. Please note that Protractor uses its own locator system, and we want the switch to be as simple as possible. Thank you!

See more

I work in a company building web apps with AngularJS. I started using Selenium for tests automation, as I am more familiar with Python. However, I found some difficulties, like the impossibility of using IDs and fixed lists of classes, ending up with using xpaths most, which unfortunately could change with fixes and modifications in the code.

So, I started using Puppeteer, but I am still learning. It seems easier to find elements on the webpage, even if the creation and managing of arrays of elements seem to be a little bit more complicated than in Selenium, but it could be also due to my poor knowledge of JavaScript.

Any comments on this comparison and also on comparisons with similar tools are welcome! :)

See more
Nightwatchjs logo

Nightwatchjs

106
259
6
Automated testing and continous integration framework based on node.js and selenium webdriver
106
259
+ 1
6
PROS OF NIGHTWATCHJS
  • 2
    Testing
  • 2
    Automates browsers
  • 1
    Better cross browser (use selenium)
  • 1
    Open source
CONS OF NIGHTWATCHJS
  • 2
    No automatic wait

related Nightwatchjs posts

Benjamin Poon
QA Manager - Engineering at HBC Digital · | 8 upvotes · 747.3K views

For our digital QA organization to support a complex hybrid monolith/microservice architecture, our team took on the lofty goal of building out a commonized UI test automation framework. One of the primary requisites included a technical minimalist threshold such that an engineer or analyst with fundamental knowledge of JavaScript could automate their tests with greater ease. Just to list a few: - Nightwatchjs - Selenium - Cucumber - GitHub - Go.CD - Docker - ExpressJS - React - PostgreSQL

With this structure, we're able to combine the automation efforts of each team member into a centralized repository while also providing new relevant metrics to business owners.

See more

Hello, I am currently looking for a tool for automation tests in order to implement it into our CI/CD pipeline for both web development but also for Android and iOS. I considered Cypress but I need compatibility with Safari. I have knowledge of Java, C#, and JavaScript so the language isn't an issue. Also looked into Nightwatchjs and Puppeteer but found these 3 above more interesting.

My main concern is:

  • Browser support - Desktop - needs to support Google Chrome, Safari, Firefox and Microsoft Edge (minimum)
  • Browser support - Mobile - Safari and Chrome (minimum)
  • App - Android and iOS

If possible i would like to avoid using another tool for mobile (like Appium)

What do you use? What is the one you recommend (even another from the ones mentioned)

Thank you very much for your help!

See more
Cypress logo

Cypress

1.3K
1.5K
100
When testing is easy, developers build better things faster and with confidence.
1.3K
1.5K
+ 1
100
PROS OF CYPRESS
  • 25
    Open source
  • 18
    Great documentation
  • 17
    Fast
  • 16
    Simple usage
  • 10
    Cross Browser testing
  • 9
    Easy us with CI
  • 4
    Npm install cypress only
  • 1
    Good for beginner automation engineers
CONS OF CYPRESS
  • 19
    Cypress is weak at cross-browser testing
  • 12
    Switch tabs : Cypress can'nt support
  • 11
    No iFrame support
  • 8
    No file upload support
  • 8
    No xPath support
  • 8
    No multiple domain support
  • 8
    No page object support
  • 7
    Re-run failed tests retries not supported yet
  • 7
    Cypress doesn't support native app
  • 7
    No support for multiple tab control
  • 6
    No support for multiple browser control
  • 6
    No support for Safari
  • 4
    $20/user/thread for reports
  • 4
    Not freeware
  • 4
    Adobe
  • 3
    No 'WD wire protocol' support
  • 3
    Using a non-standard automation protocol

related Cypress posts

Kamil Kowalski
Lead Architect at Fresha · | 27 upvotes · 1.2M views

When you think about test automation, it’s crucial to make it everyone’s responsibility (not just QA Engineers'). We started with Selenium and Java, but with our platform revolving around Ruby, Elixir and JavaScript, QA Engineers were left alone to automate tests. Cypress was the answer, as we could switch to JS and simply involve more people from day one. There's a downside too, as it meant testing on Chrome only, but that was "good enough" for us + if really needed we can always cover some specific cases in a different way.

See more
Robert Zuber

We are in the process of adopting Next.js as our React framework and using Storybook to help build our React components in isolation. This new part of our frontend is written in TypeScript, and we use Emotion for CSS/styling. For delivering data, we use GraphQL and Apollo. Jest, Percy, and Cypress are used for testing.

See more
TestCafe logo

TestCafe

124
204
17
A Node.js tool to automate end-to-end web testing
124
204
+ 1
17
PROS OF TESTCAFE
  • 3
    Cross-browser testing
  • 3
    Built in waits
  • 3
    Open source
  • 3
    Easy setup/installation
  • 2
    UI End to End testing
  • 2
    Supports Devices without extra software/package
  • 1
    Both client and server side debug
CONS OF TESTCAFE
  • 5
    No longer free

related TestCafe posts

Jest logo

Jest

3.3K
2.5K
168
Painless JavaScript Unit Testing
3.3K
2.5K
+ 1
168
PROS OF JEST
  • 35
    Open source
  • 31
    Mock by default makes testing much simpler
  • 22
    Testing React Native Apps
  • 19
    Parallel test running
  • 15
    Fast
  • 13
    Bundled with JSDOM to enable DOM testing
  • 8
    Mock by default screws up your classes, breaking tests
  • 7
    Out of the box code coverage
  • 6
    One stop shop for unit testing
  • 6
    Promise support
  • 3
    Great documentation
  • 1
    Built in watch option with interactive filtering menu
  • 1
    Preset support
  • 1
    Assert Library Included
  • 0
    Can be used for BDD
CONS OF JEST
  • 3
    Documentation
  • 3
    Ambiguous configuration
  • 2
    Multiple error messages for same error
  • 2
    Difficult to run single test/describe/file
  • 2
    Ambiguous
  • 2
    Many bugs still not fixed months/years after reporting
  • 2
    Difficult
  • 1
    Bugged
  • 1
    Reporter is too general
  • 1
    BeforeAll timing out makes all passing tests fail
  • 1
    Unstable
  • 1
    Bad docs
  • 1
    Still does't support .mjs files natively
  • 1
    Can't fail beforeAll to abort tests
  • 0
    Interaction with watch mode on terminal

related Jest posts

Robert Zuber

We are in the process of adopting Next.js as our React framework and using Storybook to help build our React components in isolation. This new part of our frontend is written in TypeScript, and we use Emotion for CSS/styling. For delivering data, we use GraphQL and Apollo. Jest, Percy, and Cypress are used for testing.

See more
Shared insights
on
CypressCypressJestJest

As we all know testing is an important part of any application. To assist with our testing we are going to use both Cypress and Jest. We feel these tools complement each other and will help us get good coverage of our code. We will use Cypress for our end to end testing as we've found it quite user friendly. Jest will be used for our unit tests because we've seen how many larger companies use it with great success.

See more
BrowserStack logo

BrowserStack

2.6K
1.9K
430
BrowserStack is a software testing platform for developers to comprehensively test websites and mobile applications
2.6K
1.9K
+ 1
430
PROS OF BROWSERSTACK
  • 130
    Multiple browsers
  • 71
    Ease of use
  • 59
    Real browsers
  • 40
    Ability to use it locally
  • 22
    Good price
  • 17
    Great web interface
  • 15
    IE support
  • 13
    Official mobile emulators
  • 12
    Cloud-based access
  • 11
    Instant access
  • 7
    Real mobile devices
  • 5
    Multiple Desktop OS
  • 4
    Screenshots
  • 4
    Can be used for Testing and E2E
  • 4
    Selenium compatible
  • 3
    Pre-installed developer tools
  • 3
    Video of test runs
  • 2
    Favourites
  • 2
    Webdriver compatible
  • 2
    Supports Manual, Functional and Visual Diff Testing
  • 2
    Many browsers
  • 1
    Free for Open Source
  • 1
    Cypress Compatible
CONS OF BROWSERSTACK
  • 1
    Very limited choice of minor versions

related BrowserStack posts

Zarema Khalilova
Frontend Team Lead at Uploadcare · | 6 upvotes · 194.7K views

I am working on #OpenSource file uploader. The uploader is the widget that other developers embed in their apps. It should work well in different browsers and on different devices. BrowserStack and Sauce Labs help to achieve that. I can test the uploader in many varieties of browsers+OS only used my browser without virtual machines.

See more