Blending automated and manual testing
The basic difference between those who prefer automation and those who prefer manual testing lies in what people believe is important. Those who prefer manual testing are thinkers who consider that thinking human beings are the key to bug finding, while those who prefer automated testing believe that bug finding is best done by getting rapid feedback on written code.
The reality is that both manual and automated testing have their benefits and drawbacks. Manual testing tends to require more time and resources; manually performing the same tests again and again can become tedious. It's also less accurate. Automated testing isn't perfect either. It demands a higher skill level, plus more development time, and adds complexity to analyzing failed tests.
There are advantages to automation. Automated testing speeds up delivery time, it is less tedious in that testing tools can perform the same tests over and over again and compare results much more quickly than a single human being or even a team. And so, automated testing can save time and money. It can run many different test cases and still provide coverage that would be difficult or impossible with manual testing alone. Automated testing also allows everyone to see the results quickly.
Manual testing also has advantages. It requires less upfront costs and so can be more cost effective than employing expensive automation tools. Since human beings are doing the testing, they are more likely to discover real world user issues that could cause problems in the field. Manual testing is also more flexible, in that it takes into account those eureka moments of insight that are the products of the human mind.
Ultimately, it's a matter of finding the correct balance. The blending of manual and automated testing is not a paint by numbers activity. It will depend on the application under development, user requirements, the funding available and development deadlines. As with anything else worthwhile, software development requires wisdom in making choices. So step back and take a look right at the start of the development cycle, to determine what testing should and should not be automated.