This is a short overview of the 4-day online course that I took in August 2021. If you are considering taking this course, you will find some details about the course and its structure as well as my feedback about the course.
If you read about software testing and/or are a member of an online community for testers (such as MoT or slack groups for testers) you probably have seen many times references to Micheal Bolton, James Bach and their websites satisfice.com, developesense.com. I will be surprised if you have not heard about them and I'd highly recommend them to every tester. I think what resonates with many testers (and mee) is that RST pays attention to many important things in testing that are often ignored or overlooked. For example, RST emphasises the role of exploratory testing and the social nature of software development and testing, teaches testers to think critically, appreciate "tacit knowledge", and consider the context. "Whom do we serve? What matters to them? What is our mission? " - these are the questions that RST encourages testers to always keep in mind. If you want to learn more about RST approach I recommend you read "How is Rapid Testing different from “Factory Style” testing?" in RST Appendices. One of the main things that RST methodology is trying to say is that "factory testing" and "addiction to test cases" are bad ideas, although they do not say that test cases cannot be helpful.
Overall, it was very helpful and motivating course. It showed me that Testing can be more "human". It showed me something I did not see in ISTQB materials. I also met new interesting people and participated in testing exercises. It was a good mix of theory and practice with some great stories from Michael Bolton and interesting discussions. One of the most important takeaways for me that I learned is that we always should ask questions before we start any testing activity.
The below outline is not 100% accurate (I might miss something or put it in the wrong day), and the course might change by the time you read this, but you will get the basic idea. I removed some spoilers that I initially included in this post.
What I liked the most about the course
- Michael is a very good presenter (and a great actor :), the scene where developer talks with tester cannot be described by words, you just have to see it:))
- You can ask as many questions as you want. What's more important, during the course you learn the importance of asking questions.
- Testing practice. You learn much more and remember for a longer time when you actually do something. See examples below.
- Lots of materials were supplied after the course.
- It was easy to communicate using Zoom and Mattermost platform (similar to Slack).
- Day 1:
- Rapid Software Testing goals and premises What is testing. "Manual testing" vs "Testing".
- The role of tester.
- Project environment and context.
- Using tools and models in testing.
- Assignment 1.
- Assignment 2
- Day 2:
- Quality criteria and oracles.
- Critical distance and social distance.
- When do you stop testing?
- Assignment 3.
- Day 3:
- Product coverage outline (PCO)
- Heuristic test strategy model
- Assignment 4.
- Assignment 5.
- Day 4:
- Test notes and bug reports. Documentation
- Session-based test management.
- Test reports.
- Assignment 6.
- Assignment 7.
- Assignment 8.
- Assignment 9.
- We were given a zip package containing class notes, slides, articles, materials on RST methodology, some examples, and some testing tools (small testing utilities, some are for Windows only). As was mentioned during the course, "we only scratched the surface". I will keep reading those materials.
2. Lifetime support - we can ask questions after course.
- We got invite to RST Slack channel.
- Ask more questions to understand the context, product, mission of testing, etc.
- Models for testing such as mindmaps, diagrams, drawings, tables, everything that can help me to build a better mental model of a product. Use them more actively because they help to learn product better and perform deeper testing.
- Risk coverage outline and risks - start expanding my analysis beyond functional testing. That means I do not have to be able to perform all types of testing, but I should be able to think critically and at least ask questions about different types of risks
- Keep learning programming to be able to create tools, scripts any other utilities to test more effectively, e.g. generate test data, interact directly with backend, etc.
- Try to put into practice what I learned from RST considering the context I work in.
Some links if you want to learn more about RST
- Rapid Software Testing Explored - Satisfice, Inc.
- Michael Bolton: Agile Software Development and Rapid Software Testing - YouTube
- How RST is Different From "Factory-Style" Testing - Satisfice, Inc.
- The Premises of Rapid Software Testing
- RST Appendices
- Exploratory Testing 3.0
- Testing and Checking Refined
- A Context-Driven Approach to Automation in Testing
- How RST is Different From “Factory-Style” Testing