Test automation refers to the usage of software tools and scripts to execute tests automatically. The goal of this being minimal human intervention and streamlined testing processes.
Automated testing has many benefits (obviously, that’s why it is used):
- Cost savings – automating tests mean less manpower and resources are spent on manual testing.
- More accurate results – automated tests are the same every time, leading to more consistency and accuracy .
- Faster testing cycles – the automated tests are much quicker to execute than manual tests
- Easier Maintenance – Manual intervention isn’t required, meaning automated testing is ideal for projects tat are evolving frequently.
- Increased coverage – Automated tests can cover more scenarios than manual tests
- Reduced human error – this is self explanatory, no manual intervention at execution time means it is far less likely to have human error
- Parallel execution – executing tests in parallel means faster execution
- Easy Reporting – Automated tests generate more detailed reports than manual testing. This lets the team identify and address issues quickly and effectively.
However, like anything, automated testing also has its drawbacks:
- High initial cost and time investment – Automated testing is expensive to set up in both time and money.
- NO human element – Humans can identify problems that automated testing may not be able to pick up on.
- Complexity – It is particularly necessary to make sure that the tests are maintainable and structured well. Just because you can run many tests quickly does not excuse poor testing.
- False Positives and negatives – False results need to be manually addressed.
Other things to keep in mind are that automated testing still needs to be maintained and the performance of the tests needs to be monitored.
As someone who endeavors to someday build a software company, I found this blog post particularly enlightening. It is both human nature and the general industry inclination to rely heavily on things that make manual tasks easier. I don’t think that is a bad thing, it is how many great ideas come about. However, this post highlights the fact that automated testing should be an option that is weighed, not just the default. On smaller scale operations, the cost to implement it may be too high or it could not be worth the time investment depending on the project. On the other end of the spectrum, it may be a no-brainer for a growing company to spend the money to implement test automation relative to the money they are spending to maintain their current testing. The big take away is to look at the pros and cons before implementing test automation, not just take it as the default. Although I am not in the position to be looking at this type of decision now, I am certain that I will remember this article when it comes up.
This blog post was written in response to : https://www.telerik.com/blogs/is-automated-testing-good-idea-what-should-you-keep-mind
From the blog CS@Worcester – CurrentlyCompiling by currentlycompiling and used with permission of the author. All other rights reserved by the author.