Automation Testing: Is It Worth The Investment?

Manual vs. Automated: Increase your speed of delivery and the quality of your software with Automation.

Laurena Dehlouz
Asayer
5 min readMay 23, 2019

--

source: DRAGONSPEARS

A broken software is bad for business.

Your users hate bugs and technical issues, and so should you. They affect your conversions, increase your bounce rate and decrease the quality of your app. Your customer experience depends on the ability to be efficient at preventing defects in your software.

If you work on an e-commerce or software, you likely have a team of testers continually making sure that everything is in working order. They find the bugs, errors or defects, and transmit that info to your developers who fix them. If you are not thoroughly testing your software, you are putting your business at risk.

Nowadays, we strive to push new code and features out faster than ever. Yet, every little tweak can have unexpected consequences. When following an Agile process it is necessary to perform testing rounds for each iteration to make sure that the product you are devliering to your customers is not suddenly riddled with faults.

In these cases, manual testing can become time-consuming and frustrating.

Manual Testing: What For?

The tester takes the role of the end-user and explores every element of the software in order to assess the quality of the user experience. These manual tests refer to the unit, integration, and functional tests of the application.

In these cases, knowledge of coding is not necessary to perform the tests which means that they can be carried out by any member of your team, regardless of their technical knowledge. All they need to do is go on their computers and try every possible journey to uncover hidden bugs.

What is the advantage?

You can assess how responsive the user experience is and find problems with performance or functional bugs. Its important because slow performances can affect your user experience. When your product UI changes often, it is more cost-efficient to manually test features out to avoid having to keep writing and maintaining automated tests.

What is the disadvantage?

It takes a considerable amount of developer time. At later stages of development, when you have a lot of scenarios to test, it becomes easier for bugs to slip through the nets. Performing these monotonous and lengthy tests can make developers lose focus and become more prone to human errors.

When your product UI is stabilized and you have a good understanding of its strengths and weaknesses, you are ready to start automating your tests. But automation, especially for smaller companies, can be expensive to implement. Is the ROI worth it?

Automated Testing

source: TESTSIGMA

Test automation uses tools to write and execute test case suites. These are a group of test case scenarios designed to make sure that a critical journey is working perfectly. They can be performed on units, on the back-end, and on the front-end.

Here is an example of a test suite:

Test case 1: Log in

Test case 2: Go to Product page

Test case 3: Add item to Basket

Test case 4: Click on Checkout

When you run this in an automation software, a robot will mimic the entire journey from Step 1 to Step 4, comparing the actual results with the expected behaviour. The software then provides your testers and developers with a report, letting them know when an issue occurred and where.

What is the advantage?

It allows you to become more efficient at software testing. By executing tests much faster, you increase your coverage across environments. You can schedule many tests to run multiple times a day, something that is difficult to accomplish with manually testing.

You save time for your developers who can focus on more productive tasks, and you save money on debugging and testing costs.

By securing the journeys that are the most critical to conversions, you become more effective at identifying and preventing issues that could otherwise affect your business. By testing quicker, you lower the impact of functional issues on your conversions. This paper by Paul Grossman calculates the ROI of automated testing in much more detail.

If you are still wondering if investing in test automation is worth it, ask yourself whether these benefits outweight the cost of the tool.

What is the disadvantage?

Typically, test automation required some knowledge of coding. In many instances this meant changing your internal team. Since most testers do not have this know-how, you needed to hire more qualified software engineers, or invest in training your current team members. Secondly, most automation tools required a lot of power to execute locally and could take up a considerable amount of resources.

However, this is no longer the case. You no longer have to jump through hoops to get started with automation. Tools have been developed that simplify the process so that anyone can do it.

Easily convert user journeys into automed tests

Let me show you how easy it is to create an automated test with a software like Asayer.

Asayer is a DevOps tool for web applications that records and logs all your user journeys. You can research sessions to find issues and convert critical journeys into automated checks (e.g. form-filling, check-out funnel, subscription page etc.).

No need to learn coding or to use a lot of internal ressources to execute the tests: Asayer let’s you pick from real user journeys the elements you want in your test suite, and runs the test for you in the cloud!

Here is an example of a user session as you can view it on Asayer. You have the pixel-perfect replay in the center with the key elements appearing as green dots on the timeline of the recording below.

On the right-hand side, you have all the steps this particular user took. All you need to do to create a test suit is to select the cases that you want to include and click on Automate.

In this example, we get the following:

Step 1) Visit the url; Step 2) Go to my account; Step 3) Click on Log-In; Step 4) Land on Log-In page; Step 5) Enter E-mail; Step 6) Enter password; Step 7) Confirm.

All that is left for you to do is to schedule the test and Run it on the cloud!

Quick, practical and easy to use, there are no more excuses to start implementing automated testing and bring your software to the next level.

--

--

Laurena Dehlouz
Asayer
Writer for

Writing about software development and debugging with @Asayer