DevelopsenseLogo

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

Endorsements

“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:

Sharper Terms for “Manual Testing”

This is a lightly-edited excerpt from a longer blog post that you’ll find here. I recommend you read it too, but if you’re short on time, here’s the core of it. If you care about understanding the status of your product, you’ll probably care about testing it. You’ll want testing to find out if the product you’ve got is the product you want. If you care about that, you need … Read more

Test Tools Need Testing

In any testing situation, when you’re using a tool, you must understand its working principles. You must know what it can and cannot do. You must know how to configure it, and how to calibrate it, how to observe it in action, and how to adjust or repair it when it’s not working properly. To do THAT effectively, you must be able to recognize when your tool is not working. … Read more

Language Models

“Language models” is typically interpreted as a compound noun, something that models language. A model is an idea in your mind, an activity, or an object (such as a diagram, a list of words, a spreadsheet, a role play, a person, a toy, an equation, a demonstration, or a program…) that represents (literally! re-presents!) another idea, activity, or object (such as something complex that you need to work with or … Read more
Posts by Category: