It occurred to me that there’s a type of testing which looks like exploratory testing, but there’s a different mental approach to it.
Exploratory testing seems to be more like:
I suspect there are some bugs in the system, so I’ll strategically try some things that have worked before, to see what I find.
And that makes sense. It’s exploratory. You’re exploring something you don’t know.
But sometimes the inner monologue sounds more like:
There are bugs in this system. I’ve seen evidence of them, and they’re of a certain kind. I can smell them. I’m going to run in a straight line and attack the system just to find those kinds of bugs, and I will not break focus until I find it/them. Which is fine, because I know they’re there. And I will find them. And I will feast well.
That’s less like exploratory testing, and more like what I call Predatory Testing.
Ever watch a cheetah hunt? It pretty much runs as fast as it can, zigging and zagging to match the prey’s movements.
Sometimes the prey gets lucky. Most times, not. 😦
As a QA hunter/huntress, the focus is different because not only do you have the ability to find those bugs, but you also suspect one is present. It’s just a matter of chasing the sucker down.
There’s also an element of tracking involved. There’s a lot more to testing software than just testing the software.
All kinds of hard and soft data are coming at you, that you can use to fine-tune your approach. Filter the data through each of your 5 senses:
What do you see?
Does anything stand out to you as odd? Are things behaving a little differently than last time? Any broken twigs or footprints? Something’s come through here recently and it went that way. Go find it.
What do you smell?
Droppings? What kind? What’s in the log file? Any core dumps silently sitting off to the side that could be opened up? Any errors showing up on the screen? What kind of bug left it there?
What do you hear?
What kinds of sounds are the customers making? Hang around the watering hole/water cooler–what kind of internal gripes are your coworkers saying about the product or tools? What’s causing them pain? Is there a pattern?
What do you feel?
How is the system responding? Faster or slower than usual? When is it happening? During database calls or load times? Do parts of the system feel like it’s chewing through a lot more data than normal? Where’d the extra data come from?
What do you taste?
Is it coffee? I bet it’s coffee. Coffee helps.
Identify, Dispatch, Attack and Destroy
What kind of bug is it that you’re tracking? How can you most efficiently attack and capture it? And, is it part of a herd of the same kind? Can you capture most/all of the herd too?
If you find you have a taste for bugs cooked rare, then you might actually be a Predatory Tester.
It’s a fun persona to put on. Join us. We hunt better in packs. OM NOM NOM NOM NOM 🙂