The debate about automating or not the software test has always been active in the software development community. This blog post by Ole Laursen discusses the issue of automating software tests with a balanced perspective that presents equally circumstances where automation has benefits or disadvantages.
In the context favorable to test automation, he mentions hard to setup tests, important corner cases, team of disparate people touching the code, complex code, the code is seeing changing input data or the code is an API with no UI. Manual test are however recommended when you have simple and easy-to-follow code, localized changes, manual tests are simple to set up, hard-to-quantify issues are important, the functionality sees lots of changes and experiments, the software sees no changes or only one person is working on the code.