Brain training for testers

"So, can you tell us what you do in your spare time to further your career as a tester?"

"Well, I play games with my kids, and do the puzzles page in the newspaper."

Cue puzzled look from interviewer. While it's a bit of a flippant answer, I do honestly believe that those activities help keep my testing skills sharp - let me break down the different sorts of puzzles/games and explain how I think they help:

1) Sudoku (and other logic puzzles)

The basic idea here is to take a small set of rules, apply them to a given scenario and see what conclusions you can reach. Substitute "Functional Spec" for "small set of rules" and I think you can see where I'm going with this one. In particular the logic grid puzzles that have wordy clues ("Bob's cat, which is not the Siamese, arrived at the vet 2 hours before the grey cat, which does not live with Claire") are great practice at deciphering the factual content of Acceptance Criteria, as well as making connections between them to work out how the whole system should fit together (and to spot any contradictions).

2) Crossword puzzles

I'm mainly thinking cryptic clues here (e.g. "Type of testing that results in fail count: N (10)"), which often require the ability to interpret the same phrase in a number of ways, very useful when inspecting requirements documents, trying to spot potential ambiguities before they even enter the coding phase.

3) Spot the difference / Kim's game / autostereograms

There are a few places where these skills can come in handy - spot the difference is a good way of gamifying the testing of a page layout against a creative design. Kim's game is effectively regression testing - how often have you had that feeling "I know something here isn't the same as it used to be, but I can't quite put my finger on it"? And you'll be surprised how quickly you can compare two blocks of text by putting them side by side and treating them like an autostereogram (or "Magic Eye" picture). For those of you that have trouble resolving those, using two adjacent tabs in a browser/notepad and flicking between them has roughly the same effect, and it's much quicker than reading both in tandem.

4) Two (or more) player games (from tic tac toe all the way through to chess)

In most cases the best way to win at a multiplayer game is to anticipate your opponent, so it pays to learn to think like they do. That's a lot like adopting a persona for testing, putting yourself in someone else's shoes. Playing against younger children is also good training for interacting with developers (well, you have to let them win some times).

So if you see me playing Exploding Kittens with my kids, or if I have my nose buried in the excellent "Puzzle Ninja" by Alex Bellos, remember: I'm not slacking. I'm furthering my career.

Comments