Critical Thinking for Testers

with Michael Bolton

Critical Thinking Skills for Testers

  • Every test must have an expected, predicted result.
  • Effective testing requires complete, clear, consistent, and unambiguous specifications.
  • Bugs found earlier cost less to fix than bugs found later.
  • Testers are the quality gatekeepers for a product.
  • Repeated tests are fundamentally more valuable.
  • You can’t manage what you can’t measure.
  • Testing at boundary values is the best way to find bugs.
  • Test documentation is needed to deflect legal liability.
  • The more bugs testers find before release, the better the testing effort.
  • Exploratory testing is unstructured testing, and is therefore unreliable.
  • Adopting best practices will guarantee that we do a good job of testing.

If you’re a tester or a test manager, you’ve probably heard statements like these touted as universal, unquestionable truths about testing.  At best, these bits of mythology and folklore are heuristics—fallible methods for solving a problem or making a decision.  At worst, they’re potentially dangerous simplifications or outright fallacies that can threaten a tester’s credibility, a product’s value, or an organization’s business.

Testers live in a world of enormous complexity, scarce information, and extraordinary time pressure.  In order to deal with this, they need skills of critical thinking-thinking about thinking, with the intention of not being fooled.  This one-day workshop, presented by Michael Bolton, is designed to teach strategies and skills—questioning skills, critical thinking, context-driven thinking, general systems thinking—that can help testers deal confidently and thoughtfully with difficult testing situations.

In the workshop, we’ll question the myths of software testing; examine common cognitive biases, and the critical thinking tools that can help to manage them; learn modeling and general systems approaches to manage complexity and observational challenges; and work through exercises that model difficult testing problems—and suggest approaches to solving them.

Key points

  • Heuristic approaches are the foundation of human decision-making, in disciplines from education to engineering.
  • While technical skills are undoubtedly important, applying them successfully requires higher-order critical thinking skills.
  • Good testing is less about confirming, verifying, and validating, and more about thinking, questioning, exploring, investigating, and discovering.
  • As the principles of the Context-Driven School of Software Testing assert, while there are good practices in context, there are no practices that are universally best.