Note that this post is part of a series where I am ‘live blogging’ my way through the ministry of testing’s 30 days of Agile Testing challenge.
I enjoy automation, and I like to talk about how to make it better. I do that a lot on this blog, and in fact, I’m giving a talk on that very subject tomorrow. However, today’s challenge is to think about what can’t be automated so let’s dig into that.
Yes, there are many aspects of usability that automation can help us with. For example gathering data on your actual customer usage patterns is very helpful for this, but with current technology we still need a lot of human involvement. If you aren’t using automation to help you with this, you are really missing out, but I think it will be a long time before we see this kind of work being fully automated.
Sometime I just know there will be bugs what I try certain things. How? I’m not quite sure. It’s probably a combination of knowing the product, past bad experiences with certain things, knowing how the developer tends to write his code, what other things have recently gone into the code, etc. Whatever it is, there is some intuition going on that I can’t easily automate. This intuition helps guide my testing and often makes me much faster and more efficient than automation at finding problems.
Finding a bug can be the easy part. Demonstrating why it matters? That’s often difficult. One of the things I notice with new testers is that often their bug reports are too factual. Do a, b and c and you get d. The problem is there is no information about why d is undesired or wrong and why we should go about fixing it. Depending on your team dynamics, this can be an important skill to have.
Figuring out what to do
I can automate a lot of things, but notice that there is an active agent at the start of this sentence.
I can automate a lot of things. I have to decide what to automate and what to test and what other things to work on. I need to set up the goals we are trying to accomplish in the first place. Automating that job away will take some serious effort.
Again tools help us here, but we still need a lot of human to human interaction to build software and we can’t just automate that away. Sometimes it feels like we try to do that, but my ability to pull together people and resources and ideas from different areas and synthesize them into something that we as a team can use to get better at doing our jobs, is not something that can be automated.