Pair testing

Pair testing can be challenging for a several reasons, not the least of which is just finding the time for it. But I still try to do it when I can. It's more difficult now that I'm a manager. I haven't really tested in months, much less pair tested. I need to work on that... but I have other things I need to work on too. Always to much to do.

When I'm pair testing with someone for the first time, I'm looking for some specific things:

  • How does the person I'm pairing with like to work? Do they take notes realtime? Do they use multiple screens and laptops, multitasking their work? Do they use tools? If so which ones?

  • How does the person I'm pairing with like to communicate? Do they talk out loud? Are the good at stream of conscious speaking? Do they IM a lot? Do they write stuff down, and if so, what?

  • How does the person I'm pairing with like to test? Do they use scripts or charters? Do they have data handy? In what format, a spreadsheet, text files, database, other? Can I see them using specific test patterns, heuristics, or techniques? As their testing unfolds, is it always the same or does it change? How does it change?

  • What does the person I'm pairing with value? What's a bug to them? How do they assess priority? Who do they view as their stakeholder(s)? What information is credible? What oracles are credible? What parts of the system do they focus on?

  • How does our dynamic come into play while we are pairing? If they are a programmer (testing their own code or not), what words do they use or concerns do they exhibit that would tell me that by their testing? If they are a tester, what words do they use or concerns do they exhibit that would tell me that by their testing? If I manage them, does that affect their behavior in a noticeable way? (And how would I notice?)

  • How do I behave while we're testing? Do I take control? Not speak up? How do I feel as we test (about the product, our testing, my interaction with the other person)?

  • What do we do after we test? Do we combine and clean up our notes? Does one of us write a script (manual or automated) for anything we tested? What defects get written up, which ones don't, and what information goes in them? What follow up charters do we think of? Do we both do a debrief?


I suppose that somewhere in there I also find time to think about the testing that I'm suppose to be doing. But I can't be bothered by those details. :)
Software TestingMichael Kelly