Patrick Alan Taylor

The Essence of Need for Automation in Testing

2012/05/18

Many years ago, before I found my home here at the VNC, I found myself interviewing at another software / website company just around the corner for a position as an SDET. It was an intensive hiring process in which I wrote code both prior to and during the interview. I am a solid utility coder, but no savant, and the problems that they gave to me were largely beyond my ken. By the time the interview was through he first hour of four, I knew that I was not likely to get this job.

The thing that I found curious though was that we talked about a lot of high level stuff; esoteric sorting algorithms, obscure methods to avoid nesting loops, and methods of finding the maximum subarray in an arbitrary array of real numbers.

What we did not talk much about was software testing. No discussion of bug isolation, not much about boundaries, nothing on the advantages of automation over exploratory testing or vice versa. When we were coming to wrap things up, the interviewing test lead asked me if I had any questions, and I asked him: “So it seems that you are very focused on automation and coding skills here. Roughly what percentage of your bugs to you find through automation compared to manual testing?”

And he replied: “Oh 80 or 90 percent of our bugs are found through manual testing, we mainly use automation for regression.”

I don’t know how their days went at this place, but if you spend 90% of your interviews talking about the techniques that reveal 10% of your bugs it sounds like you value something other than how well your software works. I understand the job of a software development engineer in test is a development engineer, but the word test is in there too; and in my philosophy very critically so.

On our team, we are excited about the potential that test automation offers us. It not only allows us to run many test hundreds of times more efficiently than we could otherwise, but it allows us to exercise whole classes of tests that would be impossible without automation. Every member of our test team writes code, both QA engineers and SDETs. One some days we are writing more code than the devs. We have a sweet automation stack that can compare millions of values in fractions of a second.

But our automation is a vehicle, a path to a destination, a light to shine in the cave. The target in our sight is the highest quality software, on time and on budget. We know that the way to hit it is to use all the techniques at our disposal, including automation, scripted testing, exploratory testing and anything else that proves useful.

This article was written as part of work I did at the Vivaki Nerve Center, part of the Publicis Groupe. Its original archive can be found at https://web.archive.org/web/20160624022031/http://www.qathedata.com/blog/2012/05/18/essential-test-automation/