Sessions are a great and simple way to organize testing tasks. They are nothing more than dedicated time to test a feature with the intent of fulfilling a mission. In fact, because the division of a task into smaller pieces is so intuitive, we often forget the importance of the mission itself. In this blog post I will talk about different types of test missions to keep in your arsenal and how you can leverage them in your testing. I assume some knowledge of what is exploratory testing and the general concept of a test session. If this is totally new to you, you may want to read Andrew’s Test Sessions post first. My first sessions When I started to create my flavour of session based testing, the mission tended to be a summary of what I had tested. For months my sessions had such creative and vague titles like “Test the login functionality”. I am not proud of admitting this, but these type of session descriptions lasted for over a year. The strategy was simple: divide the feature into pieces of functionality and then have sessions to explore each. Not terribly creative and very unstructured. Then, when I discovered and started to build my list of test heuristics, the sessions changed into enumeration of checks. For example, “Test that invalid inputs are handled correctly”. There is nothing wrong with defining sessions like these, but one thing that is missing is the “intent” of the session. One might think that the intent is always to find bugs. But perhaps there are different testing modes that we can use depending on the situation. Rethinking sessions If we think of what, besides bugs, might we be interested in finding while doing testing, we can start to create different sessions to fulfil different goals. These are the types of sessions that I use: Discovery Session: Its mission is reconnaissance. It is useful when you want to learn a new product or are trying to figure out how much scope there is to test. I am not attempting to find bugs, instead I am exploring the feature space to get an idea of how complex it is and what are the risky areas. The outcome of this session are two things: a list of additional sessions that are going to be needed and a big list of questions and assumptions for the team. Breadth Session: Its mission is a quick scan. The idea is to explore the feature using as many product dimensions as possible. SFDPOT is a popular heuristic to use, but there are many more. Since it is difficult to fully explore each of these areas in the two hours of a session, the goal here is to cycle over these heuristics at a fast pace which forces you to prioritize scenarios. The outcome is a quick gut check of the overall state of a feature. Touring Session: Its mission is to defocus. This is a session that has no mission. The intent is to let your [...]