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 half-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.
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.