As I was having dinner with Noah Höjeberg tonight, he said an interesting thing. “Some people think testing is mechanical, and that’s bad enough. But a lot of people seem to think the alternative to mechanical is magical.”
(Noah is the new test strategist at Scila AB, in Stockholm. Interesting guy. I’ve played a lot of testing dice with him, in the past. I meant to do the Art Show game with him, too, but we got so much into our conversation that I completely forgot.)
Mechanical and magical are false opposites. In Rapid Testing, we pursue another path: Heuristical. In other words, skilled testing, achieved through systematic study and the deliberate application of heuristics. This is neither a mechanical, algorithmic process, not is it magical, mystical. We can show it, talk about it, etc. And yet it cannot be automated.
Dave McNulla says
Beauty. I get irritated with both of those views, just as much as I am tired of the walls put up between automation and manual testing.
I appreciate your approach to thought-based testing. I am trying to improve my own skills in that area.
I also appreciate automating tasks that are mindless, whether it’s pumping data into a system to support my next test, piping a log tail into a grep to be notified of a potential problem, or firing off some web service calls to create certain conditions. When should I automate the entire test? When I believe the risk is low enough for me to make the entire process “mindless” or mechanical.
Dave
Jasminka says
I too fail to see how it is the opposite. Well I don’t even understand how that is meant and how it is supposed to go. If it’s not mechanical then how do I do magical testing? But thanks for posting, interesting to read how a lot of people think. Have a super exciting time here in Sweden.
Phil L says
Magical, heuristical, mechanical… Rather than Neither, how about all of the above. Testing is all of the above. Let’s try on holistic and comprehensive. We sometimes forget that the goal of testing is raising quality. Whatever way you can use to get there counts as testing. Sometimes, you must do the mechanical stuff, other times you need heuristics especially in reducing risk in an intelligent way. Magical, Socrates may have thought that test automation is magical. Sapient seems to be a term used often these days in terms of describing what is needed in testing. Coming from Homo Sapiens, I guess that means intelligent testing. We all have to be as intelligent as possible when we test, applying ourselves in the best way possible to turn out the highest quality software, given the time and resources at hand.
nicheljohnson says
I also appreciate automating tasks that are mindless, whether it’s pumping data into a system to support my next test, piping a log tail into a grep to be notified of a potential problem.