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.

Cypress Logo

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

or

pnpm add cypress --save-dev
Enter fullscreen mode Exit fullscreen mode

installing-cli e1693232

Contributing

cypress CircleCI - develop 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

Configure a badge for your project's README to show your test status or test count in the Cypress Cloud.

cypress

cypress

Or let the world know your project is using Cypress with the badge below.

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

or you can simply use

npx pactum-init
Enter fullscreen mode Exit fullscreen mode

----------

Usage

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

Grafana k6
Grafana Labs

Like unit testing, for performance

Modern load testing for developers and testers in the DevOps era.

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

Download · Documentation · Community Forum · Public Roadmap

---

k6 is a modern load-testing tool, built on our years of experience in the performance and testing industries It's built to be powerful, extensible, and full-featured. The key design goal is to provide the best developer experience.

Its core features are:

  • Configurable load generation. Even lower-end machines can simulate lots of traffic.
  • Tests as code. Reuse scripts, modularize logic, version control, and integrate tests with your CI.
  • A full-featured API. The scripting API is packed with features that help you simulate real application traffic.
  • An embedded JavaScript engine. The performance of Go, the scripting familiarity of JavaScript.
  • Multiple Protocol support. HTTP, WebSockets, gRPC, Browser, and more.
  • Large extension ecosystem. You can extend k6 to support your needs. And many people have already shared…

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.

Top comments (1)

Collapse
 
jwp profile image
John Peters

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