Testing Problems Are Solvable

You can solve them, and I can help you to learn how.

I help testers learn how to become better testers, and I help clients of testing to recognize and require excellent testing. Since 1998, I have traveled more than a million miles to provide training and consulting services in testing and understanding software quality for companies, teams, and individuals.

Testing lights the way…

If you’re developing any kind of technological product or service, you want it to be of high value, and you want to deliver it at low cost — quickly, inexpensively, and reliably.

As you’re building the product, you want to know about its status. In particular, you want to be aware of problems that could threaten the on-time, successful completion of the work.

Nobody wants problems, of course. But if there are important problems in your product, you want to be alert to them so that you can make informed decisions about them.

That’s the mission of testing: to reveal the true status of the product.

…but testing sometimes has problems of its own.

Thanks to unhelpful but distressingly common ideas, testing sometimes becomes misaligned with business and product goals. For instance:

  • Testing gets confused with fixing.
  • Testing gets reduced to simple output checks that don’t reveal problems that matter to you and your clients.
  • Testing that needs to be quick and responsive becomes ponderous, bogged down by misguided or inefficient process models, bureaucracy, and paperwork.
  • Tools and tool vendors promise miracles, but don’t deliver, leaving only costly time sinks and maintenance nightmares.
  • Worst of all, testing doesn’t reveal the actual status of the product, and doesn’t keep you informed.

The good news is that these problems are solvable.

You can solve them, and I can help you to learn how.

Excellent testing begins and ends with skilled people.

Testing is much more than checking output from the product to confirm things that we know or hope to be true. To test is to evaluate a product by learning about it through experiencing, exploring, and experimenting. Excellent testing is a process of investigation, risk analysis, critical thinking, and first-rate reporting.

People who do testing skillfully investigate the product and communicate product and business risk. While managers and developers consider risk, testers are the only people on the development team who are focused on it. If your team doesn’t have someone in a job called “tester”, people will need take on the testing role from time to time. No matter who is doing the testing work, you need people with testing skill.

Rapid Software Testing A Context Driven Methodology

The approach that I use and teach is called Rapid Software Testing (RST). Co-authored with James Bach, RST is a mindset and a skill set designed to help people to learn quickly under conditions of uncertainty and time pressure. The goal is to perform the fastest, least expensive testing that still completely fulfills the mission: finding problems that matter before it’s too late.

Rapid Software Testing Courses

RST Explored

Rapid Software Testing Explored is an introduction to the RST approach. We offer powerful new ways to think, to apply heuristic models, and to test responsibly and systematically test rapidly, responsibly, systematically, and accountably.

RST Explored description (PDF)

RST Applied

Rapid Software Testing Applied is RST in practice. We choose and focus on a single product. Students survey it, analyze it, perform tests and report bugs through an RST lens, learning through critiquing and refining techniques and approaches.

RST Applied description (PDF)

RST Managed

Excellent testing benefits from expert management. RST encourages substantial freedom and responsibility for the tester. This class focuses on the skills that will help you to be a better manager of independent, helpful, and responsible testers.

RST Managed description (PDF)

RST Coached

A systematic expertise-based coaching approach that promotes a culture of craftsmanship and continuous learning.

RST Coached description (PDF)

RST Focused: Risk

Risk-based testing is a powerful way to focus testing and to justify the time and energy it takes to test deeply.

RST Focused: Risk description – pdf

RST Focused: Strategy

Knowing how to construct, explain, and critique a test strategy is the gateway to credibility as a tester.

RST Focused: Strategy description – pdf


“I was really struggling with a presentation that I needed to deliver to the business on testing as a whole. I reached out to Michael directly on the off chance that he may have a few spare moments to point me to an article or pass along a few words of wisdom. He went above and beyond in helping me out. He not only reached out via Slack but he offered to chat with me one-on-one the next day. We spent two hours chatting about testing and the QA moniker (I now refer to QA as Quality Awareness!). He gave me wonderful advice on how to articulate that there is no manual and automated testing: there is testing and there are tools to help you support that testing. You can’t help leaving a chat with Michael feeling energized and ready to bring change as his passion for the testing community is palpable. I am happy to report that my presentation went really well and we are already starting to see changes resulting from it!”

—Jennie Neusch

Latest Posts:

Reliably Unreliable

ChatGPT may produce inaccurate information about people, places, or facts. Testing work comes with a problem: the more we test, the more we learn. The more we learn, the more we recognize other things to learn. When we investigate a problem, there’s a non-zero probability that we’ll encounter other problems — which in turn leads to the discovery of more problems. In the Rapid Software Testing namespace, we’ve come … Read more

Lousy Solutions to Problems We Create

Code is created by people. HTML elements are code, which is created by people. As part of developing those elements, people can tag them with attributes (including but not limited to “id”) that make them easy to find, via tools, for testing purposes. This can be done deliberately and consciously, or automatically as part of the creation of the element. When that doesn’t happen, testers and developers have difficulty locating … Read more

Calculating ROI

In preparation for our automation and management classes, James Bach and I are currently analysing ROI calculators (“Here’s what you can save over N years using our product!”) and we’re going deep on reverse-engineering one from a prominent tool vendor. Opaque formulas; undefined and unexplained terminology; unnamed and inexplicable constants; weird, inexplicable coefficients in the calculation; poor testability; hilarious bugs sitting right there on the surface; impossible conclusions due to … Read more
Posts by Category: