Test Automation is a buzzword!

Recently in a Skype group chat some questions came up when we talked about a Meetup which will have the title: “Agile testing”. If Agile is only a development context where a tester sits, does agile testing even exist? Is there still place for manual testing or only automated tests can remain? Do we need tester role?

Here is how I answered in a somewhat edited version:

It’s possible that Agile testing doesn’t exist. Automation popped up quickly in the questions. Only automation cannot really be a solution, because if you watch yourself carefully when you are writing your automation you will see that you are “manually” exploring the application beforehand and during it! You try things out, think about how could you call this or that service, how will your automation tell if this or that is correct or not. Testing is gaining information. You learn about the product. Only then codify some of your knowledge into algorithms so it can run quickly, many times and uninterrupted, looking for change. If something changed, it goes red and you come along to see what has happened. Red doesn’t mean a bug, green doesn’t mean there is no bug, I’m sure everyone experiences this in their daily work. What do you think?

I guess, it’s possible that everyone tests in a team, so there is no dedicated tester position (but testing is still there). Many agile practices (pairing, TDD) are emphasizing to prevent bugs, before they are introduced. The possibility of quick rollbacks and releasing often and in a staged manner are examples of quick feedback and high degree of communication and coordination, practices that Agile embraces. With these you are putting testing somewhere else. Dogfooding – when a company tries their product out by actually using it – is an example of this. There is testing, it just happens in some other form.

I owe the title to Alex from Altom, such an eye-opener. It is just a buzzword! Vendors and marketers talk like this! “100% of our regression testing is automated!” Ha! Execution of specific and scripted actions is what people usually mean by “test automation”. That is part of testing. But testing is more. Talking to others, reading or understanding explicit and unspoken requirements. Assessing risk, coming up with interesting test ideas. Mediate between colleagues. “Test automation” evaluates results the way you told it to! You evaluate with more complexity, you can add those evaluations to your next ideas. You can re-asses, re-think. You can change tool anytime, decide to focus on something for a while then go for a coffee with someone from support. Automation is very important and useful, because it can run reliably, repeatedly and tirelessly. But it’s not curious and doesn’t suspect anything. It’s a buzzword! So good to say it.

Here is a video with Alex, talking about his story changing his mindset and sharing all that in his country, Romania: https://www.youtube.com/watch?v=YRfRQaPHxqw
And here is the company they funded: http://www.altom.ro

4 thoughts on “Test Automation is a buzzword!

  1. Amit

    I don’t know if “buzzword” is the term I would use.
    I believe that while “test automation” can be a very confusing term (I really like Richard Brashaw’s version of “automation in testing”), it is still very valuable to have – if done properly.
    Probably, salespersons that use ‘we have 100% automated regression tests’ should be smacked on the head and sent home to do some homework, but some popular terms have a grain of truth in them beneath layers of misconception, and it’s important not to label something a buzzword and ignore it (“big data” is a buzzword – since it could mean virtually anything. “Test automation” on the other hand, is quite specific).

    Like

  2. erikhun

    It’s possible that I’m falling into the same mistake as many who writes about this: it can look like that I have a problem with automating the execution part of testing. Which I don’t of course. My team, project, company really needs that. The developers have to know quickly if new code interferes with older code. And I like the challenge of maintaining a suite which is relevant.
    Calling test automation a buzzword was enlightening to me because that’s the fashion in which majority of people (even testers) I meet talks about it. Like it was all there is to testing. Like eventually only automation will remain. Like it was possible to test the whole system with it. Like every tester needs to work toward that and if not, what else would they be doing.
    Thank you very much for your comment Amet! I’ll get more careful how I talk about it.
    This post got posted on reddit as well and triggered very similar conversation.

    Like

    • Amit

      Thanks for the clarification.
      I did not feel that the original text was against automation, but I managed also to miss the part where it is opposed to automation *instead* of testing. I think that what triggered me (and that unpleasant Reddit thread) is that usually “buzzword” does mean “without (almost) any value” – which is not the case for automation. Labeling it as such might be a double edged sword where you gain the clarity of what and how you are testing, but losing interest in one of the strongest tools in your toolbox, kind of like a carpenter sticking to manual saw instead of using also an electric one.
      I wonder if there could be a more suitable term for such a thing – something that is useful, but gets too much attention.

      Like

Leave a comment