The Art of Testing
Duncan Nisbet recently drew a compelling comparison between kayaking and testing. The sport of kayaking includes freestyle competition, where paddlers are judged subjectively on how they navigate a challenging course.
I myself engage in the sport of dressage, where the freestyle is the most difficult and rewarding competition. Participants must master difficult technical skills, and in addition, find the artistic impression that provides the most rewarding experience for themselves and their audience.
To succeed in testing, we need both technical awareness and creative thinking skills. We must learn what provides the most reward for our application’s audience, what they perceive as quality. Then we have to bake that quality into our software product.
As Zeger van Hese pointed out in his article On Beauty, Quality, and Relativity, our ability to evaluate quality is influenced by feelings, expectations, words, and distractions. We may miss software issues if we don’t have time to learn and experiment. In order to evaluate quality in a useful way, we need to nurture a learning culture with minimal distractions.
Marlena Compton has explored the role of the audience in the relationship between quality and art. Describing her reaction to a particular painting, she points out relationships in software that mirror relationships in art. Like a painting in a museum, software has creators and an audience. And as with artwork, creators of software may not anticipate their actual audience or how that audience will use their product.
Chris McMahon drew similar parallels between how humans create a performance and how software teams create software in his blog series on software artists.
If you’re reading this and thinking, “OK, this all sounds good, but I don’t have a creative bone in my body,” watch this video of Andy Glover’s TestBash 2012 tutorial A Picture Is Worth a Thousand Words. Andy, also known as @CartoonTester, shows how we can use lateral thinking skills and unleash our inner software testing artist. He reiterates that testers can’t think outside the box when we’re under time pressure.
Nurturing a low-stress learning environment helps everyone enjoy his work, which in my experience leads to happier customers.
All knowledge work demands creativity. As we consider different perspectives on the debate over manual scripted testing vs. automated test scripts vs. exploratory testing and testing vs. checking, we need to channel our inner software testing artist.
Everchanging business demands and time pressure often tempt us to revert to old, bad habits—“Just test the most critical things and deliver the software.” How has that worked for you in the past?
Remember that testing is an art, and look outside your workday life for inspiration. Take the necessary time to learn and experiment with better ways to improve the quality of your product.