Being a tester with an avid interest (and some practice) in fiction writing, I liken the craft of testing to the craft of writing fiction particularly because I found some correlations in terms of writing fiction and writing tests. (Oh, the opportunities for a few jokes there.) The focus I’m going to be building on here is really a similarity of craft or, more accurately, how there are similar thinking styles that translate between crafts.
First, I’ll preface this and say that when I talk about a “tester” here I refer to what I would call a “modern tester”, meaning one who realizes that the primary goal of testing is to serve as a collaboration mechanism and the primary value of tests is communication. Further, this modern tester realizes that elaborated requirements should be written as tests but still retain their ability to tell the story of business intent.
With that out of the way, I’ll start with a quote by Ernest Hemingway:
“A writer’s problem does not change. He himself changes and the world he lives in changes but his problem remains the same. It is always how to write truly and having found what is true, to project it in such a way that it becomes part of the experience of the person who reads it.”
That problem is not just for writers, I would argue, but for anyone who has to communicate ideas and information in a dynamic arena of thought.
The Very Idea of Craft
If you’ve ever tried writing any sort of fiction, you’ll generally find that there’s this story sort of floating around in your head. It may just be the start of a story; it may be disconnected scenes. You might have a few characters walking around, saying odd things, and doing even odder things. The point is that you can usually see it all so clearly. It’s right there! For me, when I write I imagine everything as if I was filming it. Pretty soon things start to come together. “Wow, this is going to be fantastic!”, you think. At this point, being terribly excited about the possibilities before you, you sit down to write …
… and then something interesting happens.
The story that comes out on the pages isn’t the same as the story in your head. Not even close. The dialogue isn’t all that great, it sort of feels forced. The action doesn’t seem to be paced right. The setting that seemed so exciting then just seems bland now. The motivations for why characters are doing what they are doing seemed so crystal clear — until you had to explain them. The whole feel just isn’t the same.
There’s a gap between the story you are able to visualize with almost crystal clarity and the story you are capable of writing.
I can tell you that as a writer — particularly as a beginning writer — this gap is often dispiriting, slightly scary, and seemingly uncrossable at times. That’s only mollified when you learn the truism that there’s always a gap between the story as you imagined it — compelling, insightful, told with subtle nuance and meaning — and what actually ends up written down. That last part is key: stories must be written, and thus read, one word at a time.
That means information is essentially accumulating in the reader’s mind to eventually create a full picture. Therein lies the problem. That process is a slow, linear accretion of impressions and it can’t ever quite equal that flash of inspiration and burst of creativity in which all the parts of your story — action, meaning, nuances, insights, all of it — slam into your authorial brain all at once.
Sucks, doesn’t it? What you’re running into in these situations is that words, unlike music or films, are not a multi-sensory event. Words are symbols. Symbols don’t work directly on the human senses. They work second-hand, through suggestions to the reader’s imagination, through words describing what you saw in your imagination.
The trick is to build that up so the readers can see what you saw in their imagination.
Now think about when you had to write test cases or use cases or requirements. You had ideas in your head and it was all clear how it had to be tested or built; the permutations, the combinations, the various data conditions — everything just made sense. You could almost see it. Yet … when trying to write out the artifacts, a form of writer’s block can kick in. It’s not that you don’t know how to test it or develop it. Rather it’s often that you don’t know the effective ways to write the tests such that what you have in your head is translated into a series of artifacts that make sense: tests that aren’t too many or too few, requirements that don’t meander, use cases that actually have a point of view, etc.
So there’s always a gap between the story in the writer’s head and the one the writer manages to put into the reader’s head. The same can happen for writing effective tests or requirements. For professional writers, that gap may be fairly small. A professional writer learns exactly what information to present — and in exactly what order — to make the words convey the original vision as closely as is humanly possible. The beginning writer must learn this as must the beginning tester. The nice thing is that there are different techniques to learning this ability.
There’s a crucial distinction to be made here. Nothing can really help you improve the quality of the story or the tests in your own head. That vision comes from everything about you: your experiences, your imagination, your beliefs about the world and the people in it, your powers of perception, your interests, your level of sophistication, your previous reading, your own “soul”, for lack of a better term. Actionable vision — which is really a by-product of talent — is not a teachable attribute.
What is teachable is craft. Craft is the process of getting the story in your head onto the page in a form that readers can follow, and remain interested in, and ultimately enjoy. Finding that form means making literally hundreds of decisions in the course of writing a story. You start asking yourself questions like this:
- What do I show first?
- How much background should I tell here?
- What scene should I put next?
- Should I go with this plot development or that one?
- Should I use this noun, or that one? Will it even matter?
- Should I go with my current ending, or something else I haven’t thought of yet?
- Am I including stuff that is really incidental to what I want to say?
The point here is relatively simple. Craft can be helped. Craft can be taught. Craft can help you narrow — if not completely eliminate — the gap between the story in your head and the story you put on the page. I know that it helped me when I realized that what we call “craft” is really just a set of navigation tools for crossing the gap.
I believe this same situation can be applied to testers and how they write and convey information through their tests. This becomes even more crucial if the tests act as specification, meaning where the intent of a requirement and the wording of a test are very closely aligned, if not entirely the same thing.
Just as there are “how to” books on writing — that most writers realize are only marginally helpful — there are “how to” books on testing. The problem for me is when testers don’t realize those books are similarly in the “marginally helpful” category. And the question for me is whether those books — in both cases — are attempting to teach science or art. And that matters to me for reasons I talked about in testing as a science and an art.
Let’s think about this for a second.
- An artist (in this case, a writer) may come up with a truly marvelous story idea, but there’s no guarantee that the idea can be reproduced as a written story with the same quality: even by the writer themselves.
- A “story idea” invented by a scientist — such as a proposed experiment to test out an idea — may not be so entertaining, but it will most probably be reproducible with consistent quality and have quite a bit of fidelity with what the scientist was thinking.
Along these same lines, artists tend to ignore “requirements” that don’t mesh with their artistic stance or their creative sensibilities. So, it’s not unusual for the marvelous story idea that the artist created to be a poor fit for the story-buying market. A scientist will more likely be in tune with what the “market” supports because their story requires empirical validation in order for it to be a scientific story.
What this means to me is that while it’s arguably true that a scientist’s creativity may be inhibited by his or her knowledge of the facts, the artist’s creation can be crippled by their ignorance (sometimes willful) of the facts.
What’s required is a balance between that creativity of the artist and the method of the scientist.
That is the challenge before the modern tester.
To cap off this post, I’ll say this: craft is a link between the art and science, between the desire for creativity and the need for method. While we’ve long had the term “engineer” applied to either QA or Testing, I think the future is that “Test Engineer” and “Quality Engineer” will become much more demanding titles. This goes beyond the current simplistic (in my opinion) approach of calling a tester a SDET and aligning them with development.
No, instead, I think the future of the craft is requiring testers to practice the thinking of applied science supplemented as necessary by artistic techniques of communication and presentation.