Ben Kelly has literally tested around the world. His career has taken him to Australia, Japan and the UK and Ben is currently a Software Engineer in Test for eBay. A regular presenter at conferences in the US and Europe, Ben also blogs at TestJutsu (when he has a spare moment).
In this month’s Testing the Limits interview, Ben discusses his testing experiences, his passion for exploratory testing, advice for new testers and his ultimate dream for the testing profession.
uTest: So, how did you become a software tester and what drew you to this field?
Ben Kelly: It should have been obvious to me in my youth. I had a habit of taking stuff apart to see how it worked. That coupled with my tendency toward dark humour and pessimism should have been a clue. I wish I’d known earlier that testing was a possible vocation.
Like many others, I fell into the field accidentally. In my case, I wanted to be a programmer. I was an okay coder, but no company seems to want ‘okay’ out of university. They want propeller hats, pocket protectors, coke-bottle glasses and social ineptitude. A friend suggested testing as a way of bridging into a programming role. I gave it a shot and then discovered that I was much more successful at finding out ways that stuff does what it shouldn’t than making it do what it should. I also enjoyed it a lot more.
You’re a big proponent of exploratory testing. What draws you to that style and why do you think it’s a good approach?
BK: All testing is exploratory to some degree. Even in the case where you have heavily prescribed test steps, there is still room for interpretation. There are often multiple ways of performing a certain action. There are cases where you will notice potentially interesting things that are not completely relevant to what you’re testing. It’s up to you as a skilled tester how you act in those situations. You could choose simply to ignore it and follow your script. You could also be a robot made entirely of meat.
I’m not against test scripts or documentation. I’m against following rules over applying skill. When you’re given the freedom to do your job as a skilled knowledge worker, it’s much easier to avoid regularly abused and frequently meaningless metrics like bug counts and test case completion percentages and instead to focus on finding information that is important to the people you serve.
Since you’re a manual, exploratory tester, what are your feelings on test automation?
BK: Test automation and I are not strangers. I don’t see automation as a dichotomy of ‘automation vs. manual.’ Automation in its many forms serves to augment testing and/or programming to some degree whether it be a throwaway script, a heavy-duty test framework or something else.
Automation should solve a problem. Much like any other software development effort, you want to know what problem you’re solving and which tool is right for the job. Testing is testing. It’s the thought behind the effort that makes it good or bad. Throwing GUI automation at every problem because that’s all you know is ignorant at best. Mandating things like percentage of manual test cases to be automated is stupid. If you’re automating without understanding why, then the tail is wagging the dog. If you’re automating in the hope of doing away with sapient manual testing then you’re doing it wrong.
You’ve worked for companies literally around the world. Do you see different approaches or attitudes toward testing in different countries?
BK: Not really. I see stereotypes more in terms of industry, company size and individual company culture rather than a country-specific attitude. Behavior is driven by what is rewarded. Companies that value commoditization of testing and protecting the bottom line will get very different testers to those that value skilled knowledge work. That seems to be true no matter what country you’re in.
eBay is one of the top names on the online retail world – not to mention one of the first in the space. How does eBay approach software testing?