Monday, September 19, 2016


“Go out looking for one thing, and that’s all you’ll ever find.”
-Old prospector’s saying
Disclaimer: In this post I reference the author Ron Patton a lot, from his book Software Testing, 2nd edition.
Automation is the future, no one can really tell you differently. On that same note automation testing is also the future. But with this future one must always be weary of the consequences of this choice. Two words “I, Robot.” For those who don’t know what this movie is, let me give an ever so brief synopsis. Futuristic world where robots are helping run things. Lead robot decides humanity is its own enemy and decides to launch a robot rebellion. Oh, the underlying thing is that robots are not supposed to hurt any human. Another movie “Eagle Eye” has a very similar plot except instead of robots it's one massive super computer A.I. that has access to every technological device in the world. I think the picture is well drawn for us in understanding the full extent of what could be issues.
Now what does this have to do with automation testing? What are the odds that in these movies the robots or A.I. was thoroughly tested?
One reality we have to realize is that there will always be bugs and that nothing will be 100% tested. There is only so much processing power and hours of the day and brainpower to think of every single use case that will ever be done on every single program throughout the world. That being said, we need to testing programs to the greatest extent that we can. With the acceptance of automation testing and better software testing practices we are able to test a program better than we could even 10 years ago.
Never get too complacent with what we have, a lesson from these types of movies. As we sink into our comfort zone and follow everybody just because everyone else is doing it, we have lost. While automation testing is a great help and tool in the software testing realm, it is not the only tool and should not be the only tool utilized in testing software. It is way too easy to rely on automation too much. Don’t ever assume that because all your automation runs without finding a bug that  there are no more bugs to find.
In testing there is this phrase known as the pesticide paradox. It is a phenomenon “ the more you test software, the more immune it becomes to your tests. The same thing happens to insects with pesticides.” If we have the same tests running and the same type of use cases testing the program, our program becomes really good against those tests. We must constantly be trying out different use cases, developing different ways of looking at the problem.

I think at this point I am beating a dead horse, but just to reiterate automation testing is awesome and can be used to speed up the process of thoroughly testing a product, but it can also be the biggest crutch if not used used as a helping tool rather than the god that knows all.

No comments :

Post a Comment