Karma vs Selenium vs WebdriverIO

Need advice about which tool to choose?Ask the StackShare community!

Karma

2.6K
602
+ 1
181
Selenium

15.6K
12.5K
+ 1
527
WebdriverIO

348
507
+ 1
40
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Karma
Pros of Selenium
Pros of WebdriverIO
  • 61
    Test Runner
  • 35
    Open source
  • 27
    Continuous Integration
  • 22
    Great for running tests
  • 18
    Test on Real Devices
  • 11
    Backed by google
  • 5
    Easy Debugging
  • 2
    Remote Control
  • 177
    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
    Easy set up
  • 6
    Functional testing
  • 4
    The Most flexible monitoring system
  • 3
    End to End Testing
  • 3
    Easy to integrate with build tools
  • 2
    Comparing the performance selenium is faster than jasm
  • 2
    Record and playback
  • 2
    Compatible with Python
  • 2
    Easy to scale
  • 2
    Integration Tests
  • 0
    Integrated into Selenium-Jupiter framework
  • 11
    Various integrations to vendors like Sauce Labs
  • 10
    Open Source
  • 8
    Great community
  • 7
    Easy to setup
  • 4
    Best solution for broad browser support

Sign up to add or upvote prosMake informed product decisions

Cons of Karma
Cons of Selenium
Cons of WebdriverIO
  • 1
    Slow, because tests are run in a real browser
  • 1
    Requires the use of hacks to find tests dynamically
  • 8
    Flaky tests
  • 4
    Slow as needs to make browser (even with no gui)
  • 2
    Update browser drivers
  • 8
    High maintenance

Sign up to add or upvote consMake informed product decisions

What is Karma?

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 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.

What is WebdriverIO?

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.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Karma?
What companies use Selenium?
What companies use WebdriverIO?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Karma?
What tools integrate with Selenium?
What tools integrate with WebdriverIO?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

What are some alternatives to Karma, Selenium, and WebdriverIO?
Jasmine
Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework. Thus it's suited for websites, Node.js projects, or anywhere that JavaScript can run.
Jest
Jest provides you with multiple layers on top of Jasmine.
Mocha
Mocha is a feature-rich JavaScript test framework running on node.js and the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases.
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.
Git
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
See all alternatives