Topic 20

Pairwise Thinking & Error Guessing

Test Design

Fernway runs on four browsers, three device types, two languages, and two user types. Multiply: 4 × 3 × 2 × 2 = 48 combinations — and next quarter, when a fifth browser and a third language arrive, 90. Decision tables tamed clusters of three to five conditions; this is a different beast, and it needs the toolbox's last two instruments: a counting insight that collapses the explosion, and the honest name for what experience contributes once the techniques run out.

The Combination Explosion

First, respect the problem. Testing all 48 combinations means running your whole regression suite 48 times — undoable and, worse, mostly wasteful, since the vast majority of combinations behave identically. But the lazy alternative — "test one of each: Chrome once, Safari once, mobile once" — is worse than it looks: four browser tests and three device tests is seven runs that never once try Safari on mobile. If that specific pairing is broken (it's always that specific pairing), one-of-each sails past it. The explosion is real, and both brute force and laziness lose to it.

The Pairwise Insight

Here's the empirical fact the technique stands on: most combination bugs involve just two factors interacting — Safari and mobile; German and the date format; member pricing and tablet layout. Bugs needing three or more specific factors to align at once are real but rare. So instead of covering every full combination, cover every pair: every browser with every device, every device with every language, every language with every user type — each pair appearing in at least one test run. That target is dramatically cheaper, because a single run covers six pairs at once (browser+device, browser+language, browser+user, device+language, device+user, language+user). Runs pull sextuple duty, and the arithmetic collapses.

48 combinations → ~13 pairwise runs
All combinations
48 runs · complete · unaffordable
One of each
7 runs · misses the pairings entirely
Pairwise
~13 runs · every pair covered · the professional middle

Pairwise in Practice

For Fernway's grid, a pairwise set needs about 13 runs — 27% of the full cost, with every single pair represented. Nobody computes these tables by hand: free tools generate them from your factor list in seconds (a category to know exists, not a product to learn — give them the factors and values, receive the run list). Your job is the part tools can't do: choosing the factors that matter, spotting impossible combinations to exclude, and — most important — saying what pairwise trades away, out loud: a bug that needs three specific factors to align (Safari + mobile + German, all at once) can escape a pairwise set. That's a flagged, deliberate risk, not an oversight — and stating it is what makes the choice professional. This is also the wedding-seating problem, if that helps it stick: you can't audition every full seating plan, but making sure every pair of feuding relatives shares a table at least once in the trials is achievable — and covers what actually goes wrong at weddings.

Error Guessing: Experience, Named Honestly

The toolbox's last instrument isn't a procedure at all. Error guessing is the ISTQB's refreshingly honest name for testing from experience: aiming at the spots that have burned you — or the industry — before. Empty inputs. Special characters in names (O'Brien breaks more software than any hacker). The double-click on Pay. The interrupted payment. February 29th. The booking that spans a daylight-saving jump. None of these come from a partition map or a state diagram; they come from a mental catalog of where bugs live, built one scar at a time.

What makes it a technique rather than vibes is the catalog — written down, deliberately grown. Start yours today, because this book has already given you entries: discounts stacking (the refund weekend), time zones shifting dates (FW-312), zero-quantity bookings (FW-341), payment events with no defined destination (FW-356), timing seams around nightly jobs (the 1:59 test). Every bug you meet from now on is a catalog entry: not "found a bug in the date picker" but "date logic breaks at time-zone boundaries — check them everywhere, always." The generalization is the entry. Twenty years from now, your catalog will be the thing juniors mistake for magic.

The Double-Click: FW-360

Error guessing pays its way immediately at Fernway. The pairwise table covers the browser grid; then the catalog adds its paranoid extras. The daylight-saving booking: fine, surprisingly. The double-click on the Pay button — the catalog's oldest entry, because impatient humans double-click everything: two Paylane charges. One booking, one traveler, one impatient finger, billed twice. FW-360 — and notice it's simultaneously a forbidden transition from last topic (paying twice from one state) and a catalog classic. The techniques overlap, and that's fine: bugs don't care which instrument found them.

The Toolbox, Complete

Step back and look at what you now carry. Partitions cut infinite inputs into groups; boundaries aim at the edges of every group; decision tables corner interacting rules; state diagrams map lifecycles and their forbidden moves; pairwise tames the combination explosion; and the catalog carries everything experience adds. Six instruments, each matched to a shape of problem — and together they're the answer to the question this chapter opened with: of the millions of possible tests, which few dozen? The ones the instruments point at. Chapter 5 teaches you to write those choices down so they survive contact with a team.

Common Confusions
  • "Pairwise guarantees catching all combination bugs." It targets two-factor bugs — the great majority, not the totality. A three-factor bug can escape, and saying so out loud is part of using the technique honestly. Flagged risk, not fine print.
  • "Error guessing is just random poking." It's aimed — at a written catalog of historically bug-dense spots. Random poking samples anywhere; error guessing samples where bugs have actually lived. The catalog is the entire difference.
  • "Techniques replace experience" — or "experience replaces techniques." Neither. The five procedures are the floor every trained tester stands on; the catalog raises the ceiling for decades. This topic is precisely where the two meet, on purpose.
  • "One-of-each coverage is a reasonable budget option." It's the worst of both worlds: real cost, and structurally blind to pairings — which is where combination bugs live. If the budget forces cuts, cut with pairwise, not with one-of-each.
Why It Matters
  • Compatibility matrices — browsers, devices, locales — are a real junior QA assignment, and "pairwise, ~13 runs, three-factor risk flagged" is the professional answer to it.
  • The bug catalog compounds over an entire career: it's the mechanism by which this year's scars become next year's ten-minute catches, and it transfers between every product you'll ever test.
  • This topic completes the interview answer the chapter has been building: partitions, boundaries, tables, states, pairs, catalog — the full "how would you test this?" repertoire, named and ordered.

Knowledge Check

What is the empirical insight pairwise testing stands on?

  • Combination bugs are too rare to be worth testing for
  • Most combination bugs involve just two factors interacting
  • Every combination must be tested to claim any coverage
  • Browsers no longer differ enough to affect behavior

Why is "one of each" coverage structurally worse than pairwise?

  • Because it requires more test runs than pairwise
  • Its runs never deliberately exercise pairings — exactly where combination bugs live
  • Because it skips some browsers entirely
  • Because it can't be generated by pairwise tools

What separates error guessing from random poking?

  • Error guessing is performed more quickly
  • Error guessing may only be done by senior testers
  • It aims at a written, growing catalog of where bugs have actually lived
  • Error guessing is always written up as formal test cases first

After finding FW-360 (double-click → double charge), what is the professional catalog entry?

  • "FW-360 happened in checkout in July"
  • "Double-submission of money-moving actions — test rapid repeats on every payment flow"
  • "Fernway's Pay button is badly built"
  • "Re-run the FW-360 scenario after each release"

You got correct