If You Are Just Starting In QA And Pondering Over Automation Tool, Here’s How 3 Popular Ones Work…

If You Are Just Starting In QA And Pondering Over Automation Tool, Here’s How 3 Popular Ones Work Under The Hood

Software QA is a process and Automation sits at the crux of it all.

Early days of the Automation QA world, the options were limited and the skill set was niche. QTP (Quick Test Professional), a commercial tool, dominated the market that required trained and skilled professionals to handle the inner workings.

Selenium and with that the emergence of open source tools changed the dominance of QTP.

Today, when we talk about Automation of the Functional Tests, we primarily look at two tools -

Selenium

Selenium is as close a tool can come to simulating interactions like a real user in a browser.

It uses WebDriver API to communicate with the browser of the application under test. The webDriver refers to protocols and language bindings with implementations of individual browsers to interact with the application.

It is a simple-to-use interface to automate user actions on the browser remotely.

The major disadvantage is that the remote execution can be flaky and slow.

Cypress

Cypress is relatively new, open-source and well maintained.

It executes the code natively inside the browser engine. It is lightning quick and provides integration with almost all major front-end frameworks. It typically uses Javascript/Typescript for scripting tests.

The major disadvantage is that it works inside the browser engine and hence does not provide a pure user interaction experience.

Playwright

Playwright is the new cool tool on the block with a major name behind it, Microsoft yet open source.

It is a node library that communicates with the browser engines using a WebSocket connection. It is headless and event-driven. It is a middle ground between the two previously mentioned tools with the benefits of both put together.

The disadvantages though are that it works with the browser kits, so it does not imitate a user interaction, and as it is a new tool on the block the support and documentation can be tricky.

Simple factors I look at when I pick a tool are -

  • Documentation and Support

  • Coverage of different types of tests and the volume

  • Option to create an easy-to-maintain framework/design pattern

  • Expertise in my team All the above tools work brilliantly for functional testing and have good integration with source code management tools and the cloud.

Read this post and more on my Typeshare Social Blog


← Back to essays