Need advice about which tool to choose?Ask the StackShare community!
Karma vs WebdriverIO: What are the differences?
What is Karma? Spectacular Test Runner for JavaScript. Karma is not a testing framework, nor an assertion library. Karma just launches a HTTP server, and generates the test runner HTML file you probably already know from your favourite testing framework. So for testing purposes you can use pretty much anything you like.
What is WebdriverIO? Webdriver/Selenium 2.0 JavaScript bindings for Node.js. 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.
Karma and WebdriverIO can be categorized as "Browser Testing" tools.
Some of the features offered by Karma are:
- Test on Real Devices
- Remote Control
- Testing Framework Agnostic
On the other hand, WebdriverIO provides the following key features:
- Extendable
- Support for the WebDriver specification as well as to Appium
- Easy Test Setup
Karma and WebdriverIO are both open source tools. It seems that Karma with 10.7K GitHub stars and 1.61K forks on GitHub has more adoption than WebdriverIO with 5.04K GitHub stars and 1.44K GitHub forks.
Typeform, Accenture, and Sellsuki are some of the popular companies that use Karma, whereas WebdriverIO is used by SuperAgendador.com, Soluto, and Shelf. Karma has a broader approval, being mentioned in 119 company stacks & 57 developers stacks; compared to WebdriverIO, which is listed in 7 company stacks and 3 developer stacks.
we are having one web application developed in Reacts.js. in the application, we have only 4 to 5 pages that we need to test. I am having experience in selenium with java. Please suggets which tool I should use. and why ............................ ............................ .............................

with the help of selenium we can automate react js for functional testing
Hi, I am starting out to test an application that is currently being developed - FE: React. BE: Node JS. I want the framework to be able to test all UI scenarios (from simple to complex) and also have the capability to test APIs. I also need to run tests across all OSs and Browsers (Windows, Mac, Android, iOS). I have also looked into react-testing-library and @TestProject.io. Any advice you can give as to which framework would be best and why would be so much appreciated! Thank you!!

You should also definitely look into Playwright, which is a new automation tool from Microsoft building on top of the Puppeteer experience and trying to bring this experience in the cross browser space - very exciting project. Great team. Also CodeceptJS as already Playwright support which at a ton of valuable features on top of Playwright, give it a go!

I'm also looking for the same, FE: React & BE: NodeJS. Cypress won't help as it lacks cross-browser testing, it doesn't support all the browsers. I'm still investigating it, but looks like WebdriverIO may fulfil what I'm looking for - Cross-browser testing, integration with CI/CD, running it as a docker service, good support on assertions & reporting of test results. Let me know if you found any information on any of the above mentioned points.

Hi Esther, if you really need cross OS and cross device automation Cypress wont help, with WebdriverIO you can do it … and check out CodeceptJS, which is a wrapper around several frameworks (like WebdriverIO) and will support future players (currently for example upcoming Playwright) as well.
Pros of Karma
- Test Runner61
- Open source35
- Continuous Integration27
- Great for running tests22
- Test on Real Devices18
- Backed by google11
- Easy Debugging5
- Remote Control2
Pros of WebdriverIO
- Various integrations to vendors like Sauce Labs11
- Open Source9
- Great community8
- Easy to setup7
- Best solution for broad browser support4
Sign up to add or upvote prosMake informed product decisions
Cons of Karma
- Slow, because tests are run in a real browser1
- Requires the use of hacks to find tests dynamically1
Cons of WebdriverIO
- High maintenance8