Is Software Test Automation for You?

By Aakash Arora August 16, 2018

 

Isn’t it a valuable question? Both from the standpoint of is this type of work right for you as a tester, and are you highly efficient to do that? Especially due to the current trend in the software industry more kind of “automation testing” is being done on various kind of projects. This is both a need and a repercussion of the implementation of agile and various other methods on projects over the last few years. The need is to facilitate quicker turnaround of code changes and check the overall optimization of the code. The repercussion is that the need has caused software teams to seek out new ways to become more efficient with the little time they have allocated before a release. Since not all projects require automation, you need to consider the efficiency of manual tests and see how much coverage the project entails. For instance, if the project is a small one, automation testing should not be a requirement since you may not have the money or resources needed to complete the project and hire an automation specialist. Test engineers strive to catch them before the product is released but they always creep in and they often reappear, even with the best manual testing processes. Test Automation software is the best way to increase the effectiveness, efficiency, and coverage of your software testing.

Startups are always on a limited budget and test automation is rather on the expensive side, so one might wonder if test automation is a smart move for a startup: Is it a must, or is it just a complete waste of time and money? In fact, many of my colleagues who are entrepreneurs have this dilemma; will test automation bring added value to their startup at such an early stage? Does the cost of the test automation effort outweigh its returns? I will try to tackle these questions, or at least simplify it as much as possible.

Test Automation, or more appropriately the “automation of test execution”, has been around for a long time in the software industry (almost from the beginning). It started off with homegrown tools built to record and playback a test. Eventually, commercial/vendor based tools came around, but they were very costly to implement and use. The skill sets needed to use them (either one) were pretty basic; you didn’t have to be a highly skilled programmer. Shared automated tests can be used by developers to catch problems quickly before sending to QA. Tests can run automatically whenever source code changes are checked in and notify the team or the developer if they fail.

Nonetheless, test automation is the best practice method to make your testing process agile and efficient, which is just what startups are all about. Even in a startup-oriented environment, if you use test automation properly, it can make a vast impact on your product’s quality and shorten its market time! In addition, in the long run – it also saves money since it’s able to detect bugs before the product is released, which eventually also saves your company’s reputation and productivity! It seems like a win-win situation.

The entire testing process, specifically test automation, should be addressed in an agile work mode. Agile is considered to be like a magic word for startups. Below is a list of several recommended practices for your test automation success in a startup environment:

1. The target should be 20-30% automation and focus on sanity tests.

2. Spend more on process automation tasks rather than on test automation.

3. Make your test team’s life easier by building a small set of tools to test faster and more efficiently.

4. If it saves time, don’t hesitate to start with using several automation tools for different purposes.

5. Sometimes it’s worth it to spend a few extra bucks on commercial platforms (as opposed to Open Source) if they provide you with what you need.

The very basic rule in a startup product development is to be lean and efficient: it’s the ultimate way for a quick delivery.