15 October 2020

Why we love test automation (and you should too)

Test automation technology is a couple of decades old. In this period, we have seen several waves of technologies sweep through the industry. These waves have transformed many industries. Information driven innovations continue to disrupt businesses and continue to surround us all around.

Test automation has, however, not become mainstream. A lot of testing still is done manually. I wonder why?

One common statement I hear is that we should automate repetitive tests. True. But is that all? I contend that test automation, if done smartly, can help us run much more comprehensive tests. We can generate combinations of conditions and leverage automation to run these over the test system tirelessly. Try running these tests manually and you will know how laborious it becomes. The result, when done manually, we skip many conditions, thereby compromising the effectiveness of tests.

Product development is becoming iterative with Agile and Lean start-up models becoming mainstream. These would simply lose almost all advantage if not complemented by a strong test automation focus. Download our Ultimate Guide to Test Automation for a step-by-step process of implementing automated software testing. The Ultimate Guide includes the same steps that help us cut testing time from weeks to days for our customers, while reducing bugs in production by over 70%.

Manual tests become very person dependent. The expertise of the tester determines how well a test case is run and whether the results are meaningful. Some testers do a thorough job of reading the test cases, understanding the core idea and enhancing the tests as they run. Many others, just repeat the documented steps and finish the job assigned to them.

Is there a better way?

I have seen companies that assigned every test case in their catalog to at least 3 testers. Till date, I have not understood the idea behind doing so. A test once executed, should be adequate – unless off course, you hope that at least one of the testers will do a thorough job, or you believe that the test case is not well designed.

Companies spend a lot of time and resources writing ‘idiot-proof’ test cases. Writing and updating these test cases can be extremely time consuming. I wonder therefore, why write tests in English (or for that matter any other language)? Why not write the tests in java (or python, or cucumber) and make them run over computers?

Manual testing needs to be done, well, when people are available – during normal business hours. Automated tests, on the other hand can run over night, over weekends - 24/7. Cloud infrastructure and parallel computing allows us to run the tests fast. Tests that would take humans weeks to complete, are run by machines within hours!

So, if you do not have much time to test, opt for automation. If you do have enough time to test, even then let machines do the job – you focus on your next big idea.

If you need help in solving these challenges, or in cutting software testing time and finding more bugs before your application's users find them, speak to us understand how we will be able to help you. Right now, we're offering a free strategy session to help set you on the right path to achieve your goals.
Or contact us on +61 8 8312 1287 or solutions[at]qsometech.com


Post a Comment