This unique class introduces Rapid Software Testing, a context-driven methodology for testing any product that includes or involves software. Through hands-on activities and interactive discussion, we challenge assumptions and expose common misconceptions about software testing. Then we show you powerful new ways to think, to apply heuristic models, and to test responsibly and systematically, so that you focus on business risk and do the right kinds of deep testing that your project needs.
1 April3 days, 09:30 AM - 05:00 PM
What is it?
Rapid Software Testing is a context-driven methodology for testing and product or service that involve software.
This means the class is not specifically about testing in an Agile, DevOps, Lean, Waterfall, or regulated context; nor do we cover any specific testing tool you might use to simulate users or support any other aspect of testing. But we do help you incorporate these things into testing by putting you in control of the process, so that you solve the problems that actually exist in your context.
RST is designed to show you a clear, simple and powerful way to think about testing that encourages responsible and systematic testing that focuses on business risk and context-dependent deep testing for your projects.
Apart from introducing the RST methodology, this class focuses on how to test a product when you have to test it right now, under conditions of uncertainty, in a way that stands up to scrutiny. It’s about how to find important bugs before it’s too late.
A secondary goal is to help you think and talk like a testing expert, so that you can proceed with confidence and gain the credibility you need.
What is the format?
This will be a hands-on workshop, we will challenge assumptions and expose common misconceptions about testing practices.
What will your learn?
RSTE is taught Socratically, with exercises, discussions and illustrations of the RST methodology. Class discussions and debate address students’ questions and specific needs. We all learn from the unique perspective that each student brings to the class.
- What Rapid Software Testing is and how it relates to software development
- How mental models and critical thinking form the basis of all testing
- Dealing with overwhelming complexity or confusion
- Recognizing problems despite ambiguous or missing specifications
- Surveying a product to prepare for deep testing
- Designing tests: heuristics, risks, procedures, coverage, oracles
- Using tools to help magnify and manage testing
- Deciding when you’ve tested enough
- Analyzing test results and report evidence in a compelling way
- Applying the Heuristic Test Strategy Model and many other specific heuristics for testing
Bring a Windows laptop. If you can’t bring a Windows laptop, bring some kind of laptop. We use software in the class that runs only on Windows. But as long as enough people bring Windows laptops, we will be okay.
You don’t have to prepare for the course. But if you want to do something that will give you a special edge in the class, you can review any of these materials:
- RST Overview
- Explaining Heuristic Test Strategy Model in Two Minutes? (YoutTube)
- Lessons Learned in Software Testing: A Context-Driven Approach, by Cem Kaner, James Bach, and Bret Pettichord
- Secrets of a Buccaneer-Scholar, by James Bach
- Rapid Software Testing Appendices
- Rapid Software Testing Public Slides
Rapid Software Testing Explored is for you if you take testing seriously and want to have pride in your work:
- If you are new to testing, we will introduce you to professional testing and provide exercises that help you develop you natural testing talents.
- If you are an experienced tester, we will help you put words to the tacit skills you have gained over time and provide exercises that help you refine them. You will appreciate that RST is a practitioner‐centered methodology– you are in control.
- If you are a technical tester, you will learn how your technical knowledge and ability to write code can supercharge the testing process.
- If you are a developer who does some testing, your deep knowledge of product internals is both a crucial resource and a potential liability. You’ll learn how to improve the intrinsic testability of the product and how to manage your biases.
- If you manage people who test, you have the power to steer them and create an environment to help them do their most effective work. You will learn what good testing looks like, how to judge the progress of testing, and how to set high, yet reasonable expectations for the testing process.
- If you are a domain expert who does some testing, we will help you apply your deep knowledge of how the product is used and who uses it. You’ll learn how to find better bugs during acceptance testing—and help others do it too.
- If you work with people who test, you will gain an appreciation for the challenges of testing, discover how you can support the testing process, and learn what good testing can do for you.