The tool is not important

One of the not-so-obvious reasons I spend a lot (too much?) time on LinkedIn is because it regularly provides me with inspiration for thinly veiled rants (also know as blog posts). This one is no exception. Here’s the question that caused this specific blog post to happen:

If a functional tester needs to learn automation, which tool (or programming language) would you recommend and why?

I’ll just forget about this ‘functional tester’ and why he or she ‘needs’ to learn automation (there is a gazillion other ways to contribute to quality software). No, my main gripe with this question is one that I’ve been talking about a lot on this blog, on other media as well as in person: it directly zooms in on the ‘how?’, skipping over the far more important questions of ‘why?’ and ‘what?’ to automate.

Note that I’m not blaming the person who asked the question, he probably meant well and really wanted an answer to his question. And yes, he got a lot of answers, most of them pointing him to Selenium and/or Java. No idea why, since there’s absolutely no context provided with regards to the application for which automated tests need to be written, the skill set of the people who are going to be made responsible for the automation, the overall software development process and lastly but probably most importantly, whether or not there is a need for automation at all.

Granted, I’m taking the question out of context here probably, or at least I’m way overthinking it, but the relentless focus on tools is a real problem in the test automation space, and one that needs fixing. I see it in questions like these, but (and that’s a far bigger problem) in job openings and project offers too. People contact me and ask me to help them introduce and set up test automation, but they’ve already made the decision to go with tool X and Y. The reasoning? ‘Well, we’ve got a couple of spare licenses for those tools’, or ‘Benny from accounting saw a demo and thought it was cool’, The stupid is strong in that one.

So, let me say this once more:

The. Tool. Is. Not. Important.

What you want to do with it is, though. And that’s the question that’s still too often forgotten. Funny thing is, other crafts mastered this a long time ago. For instance, would you trust a handyman that does not ask what needs to be done and why you want something done in the first place, but instead says ‘See you tomorrow at eight. I’ll bring my hammer.’? It could be that he’s psychic and knows you need some woodwork done. In that case, let’s hope he brings a ruler, a saw and some nails too. Or you probably won’t hire him because you’ve got a hunch that a hammer might not be all too useful for that paint job you need done. I think. I’m not really into DIY. But I hope you get my point anyway.

So why is it that we’re still directly jumping to conclusions on which tool to use, bring, buy or build when it comes to test automation? Wouldn’t it be far better if we asked why we need automation in the first place, and what exactly it is that needs to be automated, and in what way? I think it would lead to far better and more effective automation, and save the craft and the software development world of a lot of useless automation efforts.

Only after the ‘why?’ and the ‘what?’ has been covered and answered, it’s time to look at the ‘how?’. And that’s when the tool becomes important. Until then, it’s not.

7 thoughts on “The tool is not important

  1. I don’t fully agree with the objection to the quoted question. In our organization it was decided that we are no longer hiring QC personnel with no programming knowledge.
    It is not that all they will do is automation, but when they do (only when the ROI is proven), we have a preference for the tools we use.

    • Hi Asaf, thank you for your comment! That’s fine, we don’t all need to agree all of the time. And your organization’s standpoint makes total sense to me. I’m still of the opinion that it’s better to learn and study automation principles first before diving deep into specific tools.

  2. Bas,
    Now you know why I use the saying “It’s Automation, Not Automagic!” And I’ll come back later to tell the story of how that saying came about and how it relates to your post.

    • Looking forward to it! By the way, that quote is prominently visible as a sticker on my laptop since a couple of weeks šŸ™‚

  3. Pingback: Java Web Weekly, Issue 181 | Baeldung

  4. Pingback: Testing Bits ā€“ 6/11/17 – 6/17/17 | Testing Curator Blog

  5. Pingback: Java Testing Weekly 25 / 2017

Leave a Reply

Your email address will not be published. Required fields are marked *