Monday, June 14, 2010

(11/12) All I Ever Needed to Know About Testing I Learned in Scouts

This is the eleventh of a 12 part series.

As many of you know, outside of testing and raising a family, my single biggest time commitment is being a Boy Scout Leader. Over the past couple of years, I’ve seen and heard various presentations regarding a code of ethics around (teaching, development, testing, governance, fill in the blank). Each time I’ve heard or read these statements I’ve caught myself saying the same thing… “If everyone just lived by the Scout Law, we wouldn’t need this patchwork blanket of ethics rules and codes of conduct”.

My “challenge” now is to see if I really could map Testing to the Twelve Points of the Scout Law.

Note: these twelve points are those as defined by the Boy Scouts of America; while the Scout Law is similar in all countries that have Scouting movements, the wording is often a little different depending on the country.

“A Scout is Trustworthy, Loyal, Helpful, Friendly, Courteous, Kind, Obedient, Cheerful, Thrifty, Brave, Clean and Reverent”

A Tester is… Clean

Note that this is not specifically physical cleanliness , though when dealing with Scouts of a certain age, this is definitely the primary focus. It actually goes deeper than that. Clean has to do with a state of mind, a state of organization, a state of being willing to keep our conversations, our interactions and our way of speaking also clean (meaning uncluttered, tidy, polished, focused and respectful). I mention to many Scouts that it is possible to be physically dirty but have a clean heart, and the opposite is true as well, to be physically clean but become "filthy" on the inside. When faced with those options, I'll always encourage the former over the latter.

So does this have a place in the Tester’s law? Absolutely. Do we consider it important to have known states for our systems when we test (or at the very least, as close to known states as is possible, since we know that there really isn’t any way to guarantee an absolutely exact test environment for every test iteration). Keeping tests organized, keeping documentation uncluttered, and reporting in a simple, direct way enhances our craft and helps make us more credible. Additionally, it’s up to us to help each other maintain good and productive habits in our craft, which definitely comes into play whenever I think of the term “clean”. By doing things that allow us to be straightforward, showing integrity in our actions, we strengthen our credibility. Taking shortcuts and cheating so that we can get approval or meet a deadline should rightfully be looked down upon. Shortcuts rarely lead to better quality or better testing in the long run, though they might provide a brief respite here and now. We should avoid that temptation, as it “dirties” us and our craft any time we do it. Test hard, test well, and yes, test clean. I believe it’ll be worth it :).

No comments: