There is a plethora of online articles suggesting that automated testing solutions can help improve product quality and reduce the overall time to market. So, it is no surprise that there is an ever-growing demand for automated testing as part of an organisation’s software development process.
The benefits from an automated test approach aren’t just limited to the product quality or reductions in delivery time, however. Many factors make automation testing appealing. For example, it’s reusable, repetitive and you can integrate tests into the overall development solution.
Ask any tester to manually run a regression test pack after each release against the multitude of different browsers and you’ll likely be met with a deluge of reasons why this can’t happen. This itself is a further reason why automation can be both a beneficial and attractive option.
Despite all these benefits, automated testing is not a one-stop shop fix to a guaranteed bug-free product. Like manual testing, it has its strengths and weaknesses and needs to be targeted and tailored in order to provide the maximum benefit. Otherwise, it can become no more than an expensive and time-consuming exercise in delivering very little. It’s important to remember that automated test scripts cannot think for themselves – they are reliant on the thoughts of the test author and can only deliver what they have been programmed to do.
Manual exploratory testing can, and should in my mind, be used to enhance the coverage of an automated test solution, and vice versa. However, manual and automated testers have totally different skill-sets.
The big question then is: where does this leave manual testing, as part of the software development process, now that there is an ever-increasing demand for test automation engineers? And, more importantly, if the growth of automated testing is reducing the demand for manual testing, then what is going to happen to all those manual testers?
Manual testing vs. manual testers
To me, the answer lies in understanding the difference between manual testing and manual testers. To put it simply, a manual tester is the human element of the test process. They possess the test-design skills and thought capabilities used in creating a test before the manual testing techniques required to execute this are employed.
While automation can replace the physical acts needed to execute a test, such as pressing buttons or entering page content, it cannot – at least not yet – replace the human design element and thought process.
So, for an organisation to get all the benefits associated with an effective and well-designed automated test approach, and for the manual tester of today to remain marketable, several things are needed. They must be adaptable, and add the aspects of test automation to their current skill-set, by addressing all the challenges that test automation presents: like coding. And they need to learn about the new tools, technologies and approaches that are required of an automation tester.
There will always be a demand for manual testing techniques, such as exploratory testing, due to reasons such as the cost involved and the time required to get a result. However, this in itself is not enough to deliver full confidence across a whole development programme.
Therefore, it is my opinion that the tester with a manual-only skill-set is becoming endangered in the current QA climate. Consequently, without up-skilling to incorporate test automation, they may find themselves frozen out in an ever-decreasing pool of test engineers.