Alternatives to Selenium logo

Alternatives to Selenium

Protractor, Cypress, Nightwatchjs, Puppeteer, and Cucumber are the most popular alternatives and competitors to Selenium.
4.4K
3K
+ 1
445

What is Selenium and what are its top alternatives?

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.
Selenium is a tool in the Browser Testing category of a tech stack.
Selenium is an open source tool with 16.7K GitHub stars and 5.5K GitHub forks. Here’s a link to Selenium's open source repository on GitHub

Selenium alternatives & related posts

Protractor logo

Protractor

175
125
6
175
125
+ 1
6
End-to-end test framework for Angular and AngularJS applications
Protractor logo
Protractor
VS
Selenium logo
Selenium

related Protractor posts

Jorge Quiros
Jorge Quiros
SR QA Automation Engineer at Indecomm · | 9 upvotes · 321.2K views
Protractor
Protractor
Jasmine
Jasmine
JavaScript
JavaScript
Selenium
Selenium
Cypress
Cypress
#Testing
#Cypress
#Qaautomation

This is a trending topic on Automation testing for E2E web applications.

I have used Protractor and Jasmine for automation testing frameworks in JavaScript by using the Selenium web driver manager.

Now, new guy in town Cypress does not use Selenium and runs directly in your app without any json wire protrocol, but it does not support parallel testing or mobile testing.

Have you experienced both? Should I stick with old and known ?

#testing cypress #selenium qaautomation #qa

See more
Cypress logo

Cypress

344
219
23
344
219
+ 1
23
Better, faster, and more reliable testing for anything that runs in a browser.
Cypress logo
Cypress
VS
Selenium logo
Selenium

related Cypress posts

Kamil Kowalski
Kamil Kowalski
Engineering Manager at Fresha · | 20 upvotes · 50.2K views
atFresha EngineeringFresha Engineering
Cypress
Cypress
JavaScript
JavaScript
Elixir
Elixir
Ruby
Ruby
Java
Java
Selenium
Selenium

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
Robert Zuber
CTO at CircleCI · | 16 upvotes · 377.8K views
atCircleCICircleCI
Next.js
Next.js
React
React
Storybook
Storybook
TypeScript
TypeScript
Emotion
Emotion
GraphQL
GraphQL
Apollo
Apollo
Jest
Jest
Percy
Percy
Cypress
Cypress

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
Nightwatchjs logo

Nightwatchjs

62
70
0
62
70
+ 1
0
Automated testing and continous integration framework based on node.js and selenium webdriver
    Be the first to leave a pro
    Nightwatchjs logo
    Nightwatchjs
    VS
    Selenium logo
    Selenium

    related Nightwatchjs posts

    Benjamin Poon
    Benjamin Poon
    QA Manager - Engineering at HBC Digital · | 8 upvotes · 129.7K views
    Nightwatchjs
    Nightwatchjs
    Selenium
    Selenium
    JavaScript
    JavaScript
    Cucumber
    Cucumber
    GitHub
    GitHub
    GoCD
    GoCD
    Docker
    Docker
    ExpressJS
    ExpressJS
    React
    React
    PostgreSQL
    PostgreSQL

    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
    Puppeteer logo

    Puppeteer

    136
    84
    3
    136
    84
    + 1
    3
    Headless Chrome Node API
    Puppeteer logo
    Puppeteer
    VS
    Selenium logo
    Selenium
    Cucumber logo

    Cucumber

    347
    239
    0
    347
    239
    + 1
    0
    Simple, human collaboration.
      Be the first to leave a pro
      Cucumber logo
      Cucumber
      VS
      Selenium logo
      Selenium

      related Cucumber posts

      Benjamin Poon
      Benjamin Poon
      QA Manager - Engineering at HBC Digital · | 8 upvotes · 129.7K views
      Nightwatchjs
      Nightwatchjs
      Selenium
      Selenium
      JavaScript
      JavaScript
      Cucumber
      Cucumber
      GitHub
      GitHub
      GoCD
      GoCD
      Docker
      Docker
      ExpressJS
      ExpressJS
      React
      React
      PostgreSQL
      PostgreSQL

      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
      Sarah Elson
      Sarah Elson
      Product Growth at LambdaTest · | 4 upvotes · 71.2K views
      atLambdaTestLambdaTest
      LambdaTest
      LambdaTest
      Selenium
      Selenium
      JavaScript
      JavaScript
      Java
      Java
      Python
      Python
      PHP
      PHP
      Cucumber
      Cucumber
      TeamCity
      TeamCity
      CircleCI
      CircleCI
      #Seleniumgrid
      #Selenium
      #Webdriver
      #Producthunt
      #Hunted

      @producthunt LambdaTest Selenium JavaScript Java Python PHP Cucumber TeamCity CircleCI With this new release of LambdaTest automation, you can run tests across an Online Selenium Grid of 2000+ browsers and OS combinations to perform cross browser testing. This saves you from the pain of maintaining the infrastructure and also saves you the licensing costs for browsers and operating systems. #testing #Seleniumgrid #Selenium #testautomation #automation #webdriver #producthunt hunted

      See more
      PhantomJS logo

      PhantomJS

      334
      246
      17
      334
      246
      + 1
      17
      Scriptable Headless WebKit
      PhantomJS logo
      PhantomJS
      VS
      Selenium logo
      Selenium

      related PhantomJS posts

      Tim Abbott
      Tim Abbott
      Founder at Zulip · | 3 upvotes · 167.1K views
      atZulipZulip
      CasperJS
      CasperJS
      PhantomJS
      PhantomJS
      Node.js
      Node.js

      We use CasperJS because we adopted it back in 2013 for JavaScript frontend testing. It was a really nice system back then compared to what else was out there; you had PhantomJS as a programmable browser that actually rendered CSS and everything, it was really fast (speed is a big downside of e.g. Selenium), and it was possible to make non-flaky frontend integration tests with it.

      I wouldn't recommend it today, because PhantomJS is a basically dead project, and as a result, so is CasperJS. I expect we'll migrate to something else. We haven't in large part because 95% of our new tests are written with a simple Node.js-based unit testing framework we use that run 35K lines of unit tests covering most of our JS codebase in 3.6 seconds. And for the things where we want an integration test, CasperJS does work, and I think there's a good chance that waiting another year or two will result in our being able to switch to a much better option than what we'd get if we migrated now.

      See more
      Python logo

      Python

      34.6K
      27.7K
      5.9K
      34.6K
      27.7K
      + 1
      5.9K
      A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.
      Python logo
      Python
      VS
      Selenium logo
      Selenium

      related Python posts

      Nick Parsons
      Nick Parsons
      Director of Developer Marketing at Stream · | 34 upvotes · 414K views
      atStreamStream
      Stream
      Stream
      Go
      Go
      JavaScript
      JavaScript
      ES6
      ES6
      Node.js
      Node.js
      Babel
      Babel
      Yarn
      Yarn
      Python
      Python
      #FrameworksFullStack
      #Languages

      Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

      We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

      We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

      Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

      #FrameworksFullStack #Languages

      See more
      Jeyabalaji Subramanian
      Jeyabalaji Subramanian
      CTO at FundsCorner · | 24 upvotes · 551.7K views
      atFundsCornerFundsCorner
      MongoDB
      MongoDB
      PostgreSQL
      PostgreSQL
      MongoDB Stitch
      MongoDB Stitch
      Node.js
      Node.js
      Amazon SQS
      Amazon SQS
      Python
      Python
      SQLAlchemy
      SQLAlchemy
      AWS Lambda
      AWS Lambda
      Zappa
      Zappa

      Recently we were looking at a few robust and cost-effective ways of replicating the data that resides in our production MongoDB to a PostgreSQL database for data warehousing and business intelligence.

      We set ourselves the following criteria for the optimal tool that would do this job: - The data replication must be near real-time, yet it should NOT impact the production database - The data replication must be horizontally scalable (based on the load), asynchronous & crash-resilient

      Based on the above criteria, we selected the following tools to perform the end to end data replication:

      We chose MongoDB Stitch for picking up the changes in the source database. It is the serverless platform from MongoDB. One of the services offered by MongoDB Stitch is Stitch Triggers. Using stitch triggers, you can execute a serverless function (in Node.js) in real time in response to changes in the database. When there are a lot of database changes, Stitch automatically "feeds forward" these changes through an asynchronous queue.

      We chose Amazon SQS as the pipe / message backbone for communicating the changes from MongoDB to our own replication service. Interestingly enough, MongoDB stitch offers integration with AWS services.

      In the Node.js function, we wrote minimal functionality to communicate the database changes (insert / update / delete / replace) to Amazon SQS.

      Next we wrote a minimal micro-service in Python to listen to the message events on SQS, pickup the data payload & mirror the DB changes on to the target Data warehouse. We implemented source data to target data translation by modelling target table structures through SQLAlchemy . We deployed this micro-service as AWS Lambda with Zappa. With Zappa, deploying your services as event-driven & horizontally scalable Lambda service is dumb-easy.

      In the end, we got to implement a highly scalable near realtime Change Data Replication service that "works" and deployed to production in a matter of few days!

      See more
      Watir logo

      Watir

      6
      3
      0
      6
      3
      + 1
      0
      Selenium abstraction in ruby
        Be the first to leave a pro
        Watir logo
        Watir
        VS
        Selenium logo
        Selenium

        related BrowserStack posts

        Zarema Khalilova
        Zarema Khalilova
        Frontend Team Lead at Uploadcare · | 5 upvotes · 49.5K views
        atUploadcareUploadcare
        BrowserStack
        BrowserStack
        Sauce Labs
        Sauce Labs
        #OpenSource

        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
        Karma logo

        Karma

        498
        321
        175
        498
        321
        + 1
        175
        Spectacular Test Runner for JavaScript
        Karma logo
        Karma
        VS
        Selenium logo
        Selenium

        related Karma posts

        Jasmine
        Jasmine
        Karma
        Karma
        Angular CLI
        Angular CLI
        Jest
        Jest
        Visual Studio Code
        Visual Studio Code

        Switched from Jasmine with Karma that come setup by Angular CLI to use Jest instead, since Jasmine and Karma were very finicky in my setup and had to be reconfigured frequently to run tests properly.

        Jest was also easier to integrate into my workflow with Visual Studio Code.

        See more

        related LambdaTest posts

        Sarah Elson
        Sarah Elson
        Product Growth at LambdaTest · | 4 upvotes · 71.2K views
        atLambdaTestLambdaTest
        LambdaTest
        LambdaTest
        Selenium
        Selenium
        JavaScript
        JavaScript
        Java
        Java
        Python
        Python
        PHP
        PHP
        Cucumber
        Cucumber
        TeamCity
        TeamCity
        CircleCI
        CircleCI
        #Seleniumgrid
        #Selenium
        #Webdriver
        #Producthunt
        #Hunted

        @producthunt LambdaTest Selenium JavaScript Java Python PHP Cucumber TeamCity CircleCI With this new release of LambdaTest automation, you can run tests across an Online Selenium Grid of 2000+ browsers and OS combinations to perform cross browser testing. This saves you from the pain of maintaining the infrastructure and also saves you the licensing costs for browsers and operating systems. #testing #Seleniumgrid #Selenium #testautomation #automation #webdriver #producthunt hunted

        See more
        Sarah Elson
        Sarah Elson
        Product Growth at LambdaTest · | 2 upvotes · 12.6K views
        atLambdaTestLambdaTest
        Selenium
        Selenium
        LambdaTest
        LambdaTest
        Selenium Grid Setup Tutorial For Cross Browser Testing

        Selenium LambdaTest

        See more
        Sauce Labs logo

        Sauce Labs

        228
        212
        406
        228
        212
        + 1
        406
        Test mobile or web apps instantly across 700+ browser/OS/device platform combinations - without infrastructure setup.
        Sauce Labs logo
        Sauce Labs
        VS
        Selenium logo
        Selenium

        related Sauce Labs posts

        Zarema Khalilova
        Zarema Khalilova
        Frontend Team Lead at Uploadcare · | 5 upvotes · 49.5K views
        atUploadcareUploadcare
        BrowserStack
        BrowserStack
        Sauce Labs
        Sauce Labs
        #OpenSource

        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
        WebdriverIO logo

        WebdriverIO

        39
        45
        3
        39
        45
        + 1
        3
        Webdriver/Selenium 2.0 JavaScript bindings for Node.js
        WebdriverIO logo
        WebdriverIO
        VS
        Selenium logo
        Selenium

        related WebdriverIO posts

        Kevin Roulleau
        Kevin Roulleau
        QA Engineer Freelance at happn · | 5 upvotes · 33.9K views
        athappnhappn
        WebdriverIO
        WebdriverIO
        Appium
        Appium
        Selenium
        Selenium

        I chose WebdriverIO and Appium to implement a E2E tests solution on a native mobile app. WebdriverIO goes well beyond just implementing the Selenium / Appium protocol and allows to run tests in parallel out of the box. Appium has the big advantage of supporting iOS and Android platforms, so the test codebase and tools are exactly the same, which greatly reduces the learning curve and implementation time.

        See more