DEV Community

Cover image for Top 3 Automation Testing Tools for 2022
DHEEYANKA PRIYA BOMMISETTY
DHEEYANKA PRIYA BOMMISETTY

Posted on

Top 3 Automation Testing Tools for 2022

Using the right automation testing tools is incredibly beneficial to your software testing efforts and delivery success. Right set of tools will have a greater impact on the efforts we put on development & maintenance of automation frameworks. Here is the list of tools that I found and currently using for UI Automation, API Automation and Performance testing. There are other great tools out there in the market but this article doesn't include or compare with them as this list is purely opinionated.

UI Automation

Cypress is a powerful testing tool that needs no introduction if you have been developing frontend apps recently. The cypress home page starts with the coolest testing quote:

The web has evolved. Finally, testing has too.

With its features, cypress truly stands for what it says.

GitHub logo cypress-io / cypress

Fast, easy and reliable testing for anything that runs in a browser.

Documentation | Changelog | Roadmap

The web has evolved. Finally, testing has too.

Fast, easy and reliable testing for anything that runs in a browser.

Join us, we're hiring.

npm Gitter chat StackShare

What is Cypress?

Why Cypress Video

Installing

npm version

Install Cypress for Mac, Linux, or Windows, then get started.

npm install cypress --save-dev
Enter fullscreen mode Exit fullscreen mode

or

yarn add cypress --dev
Enter fullscreen mode Exit fullscreen mode

installing-cli e1693232

Contributing

  • CircleCI - develop branch
  • CircleCI - master branch

Please see our Contributing Guideline which explains repo organization, linting, testing, and other steps.

License

license

This project is licensed under the terms of the MIT license.

Badges

Let the world know your project is using Cypress.io to test with this cool badge

Cypress.io

[![Cypress.io](https://img.shields.io/badge/tested%20with-Cypress-04C38E.svg)](https://www.cypress.io/)

Cypress makes tests easier as it is interactive and runs alongside your application. This means that the Cypress test runner has full access to your code, and doesn’t run externally like Selenium frameworks do.

API Automation

Our application is powered by numerous micro-services that are communicating with each other through an API interface. Having automated API testing became paramount for us as they represent the entire application logic. Following the traditional approaches to test the API's will no longer work. We need the next-gen tool that aligns with the world of micro-services. After a lot of exploration, we decided to go with PactumJS. Considering its features, I believe it is the most underrated open source testing tool available in the market.

GitHub logo pactumjs / pactum

REST API Testing Tool for all levels in a Test Pyramid

logo

PactumJS

Build Coverage Downloads Size Platform

Stars Twitter

REST API Testing Tool for all levels in a Test Pyramid


PactumJS Demo

PactumJS is a REST API Testing Tool used to automate e2e, integration, contract & component (or service level) tests.

  • ⚑ Swift
  • 🎈 Lightweight
  • πŸš€ Simple & Powerful
  • πŸ› οΈ Compelling Mock Server
  • πŸ’Ž Elegant Data Management
  • πŸ”§ Extendable & Customizable
  • πŸ“š Clear & Comprehensive Testing Style
  • πŸ”— Component, Contract & E2E testing of APIs

----------

Documentation

This readme offers an basic introduction to the library. Head over to the full documentation at https://pactumjs.github.io

Need Help

We use Github Discussions to receive feedback, discuss ideas & answer questions.

Installation

# install pactum as a dev dependency
npm install --save-dev pactum
# install a test runner to run pactum tests
# mocha / jest / cucumber
npm install --save-dev mocha
Enter fullscreen mode Exit fullscreen mode

----------

Usage

pactum can be used for all levels…

As most of out tech stack was in Node.js, it was simple for developers to contribute to API testing. Instead of having unit tests, developers started writing component tests for their services.

Performance Testing

For performance testing we want a tool that is scriptable, version controlled and easy for users to adapt. As all our services communicate over HTTP, we don't need a tool that supports wide range of protocols. Keeping that in mind, we came across k6. It is a developer-centric, free and open-source load testing tool built for making performance testing a productive and enjoyable experience.

GitHub logo grafana / k6

A modern load testing tool, using Go and JavaScript - https://k6.io

k6

Like unit testing, for performance

A modern load testing tool for developers and testers in the DevOps era.

Github release Build status Go Report Card Codecov branch
@k6_io on Twitter Slack channel

Download Β· Install Β· Documentation Β· Community Forum

---

k6 is a modern load testing tool, building on our years of experience in the load and performance testing industry. It provides a clean, approachable scripting API, local and cloud execution, and flexible configuration.

This is how load testing should look in the 21st century.

Menu

Features





Both our UI and API Automation testing tools are in JavaScript. With k6, all our testing needs are met by a single programming language.

Cypress, PactumJS & k6 are the open-source automation testing tools that we have considered as the top 3 for year 2022.

Discussion (1)

Collapse
jwp profile image
John Peters

I agree Cypress is best in class. Playwright is catching up...