Tester: Between the Robot and Monkey
There are two interesting points of view on testing, which almost every tester facing from time to time. The first one – software analyzing is easy as pie and doesn’t take much of the grey matter: you just sit down and click through the tests. The second – it is not necessary to use human testing, you just have to automate all the tests and live happily ever after.
These approaches are somewhat naive, because someone still has to put together these tests and write them up; someone has to keep an eye on autotests and analyze their results and so on.
In fact, it's the same point of view: both scenarios at least assume that it is possible to compose tests in that way so anyone from student to script will be able to successfully perform them. Or, in other words – anyone from Monkey to Robot. Let’s figure this out and decide if it is a rightful affirmation.
Monkeys vs Robots in Testing
Monkeys are able to look around a little bit. Robots can gaze fixed at some point, but quickly and for a long time. With this significant distinction, different testing methods are sometimes working out with Monkeys, and sometimes need Robots.
However, Monkeys and Robots almost can’t do anything themselves. They can’t think out test cases and program robots. They are able to consider only the formal criteria described in the test case or script, they disregard the context.
Well, almost disregard. Monkeys do look around a little and sometimes notice odd parts not provided with a test case. They can’t ask questions and communicate (even with Google). They don’t seek to understand how the application works, and why after clicking the button a banana falls (or don’t) from the sky.
They are not responsible for the results. Most often, they can’t provide additional information if something went wrong during the functional testing. They only see the application and don’t work with the other product’s components. They don’t remember anything. They don’t have their own judgments, assumptions and expectations; there is an algorithm and the results – expected and actual.
In short – they suck at thinking. Robots – completely, Monkeys – almost. That’s why you need a real tester in your team, he’s better then Monkeys and Robots alike. Well, except that the Robot clicks faster. However, the professional specialists see the situations, where there is no need to click at all. Good thing is, you don’t need to be afraid of Monkeys.
Sometimes Monkeys level up to real testing engineers, being good enough in looking around and noticing more odd things.
Largely this is the main part of tester’s work, and all sorts of scripts and Robots only give the specialist more time on results’ observation and interpretation. Let the automation perform routine actions. We'll see, what results it’ll eventually deliver, and draw conclusions.
The real tester looks around, doing it quickly and for a long time. You need to look “quickly” to notice more bugs (and not only in the product). You need to look “for a long time”, meaning constantly revise the tests at all stages of development. Not by chance, the “blurred eye” is one of the major tester’s trouble.
Good luck to you! Bring in some faithful Robots and clever Monkeys into your projects, but don’t forget why do you need a real tester.