Jump In: Session-Based Testing
One approach to trying session-based testing as quickly as possible
This is one example of how you might approach session-based testing for a new product or feature. It is designed to get you involved with the process quickly, not to explain everything in great detail.
Quick Overview
Sessions are a way to break up what a tester does into time-boxed units, described by mission statements called charters. The idea is to spend the time of a session investigating to the mission of the charter, and noting things down in order to mentally organise testing, document testing performed, have reference to useful models and documents, catalogue ideas, note bugs and issues found, add reminders to raise questions and so on.
So, in short:
Sessions are time-boxed testing
Charters are missions that describe what to cover during that testing
Ideas are things that you might want to do in this session or future sessions
Bugs are problems with the product
Issues are problems with the project. Resources you might have to request, testing blockers, questions you need answers for, tools you need, and so on.
Change all of these terms, if you like, to ones you prefer. The important thing is to get going using anything so you can make the process your own and adapt it to your context and preferences.
You can also add anything else you like to these notes. Tables of data, checklists, links to resources, names of tools that you use, systems of coverage, flow models, whatever is necessary to explain the testing.
Template
Grab a copy of the template and put it into any note taking system that you like. Notepad, OneNote, CherryTree, whatever you like. You can always change note systems later, if you like, and you can change the template however you wish.
=Summary=
# Start Time:
# Charter
# Linked Information
----------
=Environment=
----------
=Notes=
#Test Notes
#Bugs
#Issues
----------
=Wrap Up=
# End Time:
# Checklist
- All bugs investigated and raised as needed
- Issues actioned or answered
- Feedback given
- Any new charters created
- Session debriefed
Again, just use this template, or make one of your own that serves the same needs. You will be adapting and changing things as you go to best fit how you work and the needs of your context.
Creating Your First Charter
A charter can be any description of some testing that might be done. Concentrate on the goal, rather than the method, as how the testing is done will be left to the tester. Don’t include steps like test cases, only higher level guidance. Include anything you would like to investigate or cover. Charters can be vague, or specific, as needed.
Here’s an example:
Investigate that saving values using the user edit page sets them correctly in the DB each time. Test for reliability with extreme values. Use the design document for reference.
And here’s another:
Recon the Skiddlybop app to determine what testing is required. Perform capability testing on important workflows and make notes on potential risks.
And another:
Do an intake session for the Doodlywop site. Find out what it is, what it does, who is involved, and what materials are associated with it.
So as you can see a charter can be anything from “take a look” to “investigate a specific function in a specific way”. It might include coverage, specific problems to look for, how the testing is done, and resources to help inform testing.
If you’re struggling for ideas do a session to evaluate the functionality of part of a product you’re familiar with. The important thing is to begin so that you can start to make the process your own.
Performing a Test Session
Decide how long you have to do this session. 90 minutes is typical, but perhaps you’ll try 60 for your first one. Remember that you haven’t failed if you stop early; it might be that you need to make changes and try again, it’s okay.
Write down the start time in Start Time. Set an alarm for the end time, on your phone or on the computer, whatever you need. Make it a silent alarm if it would disturb others, obviously.
Begin testing. Write down something that you’re going to do, such as “Open the users page and identify the inputs”, or something you’re going to check such as “Do all these input fields accept large inputs? Let’s see!”. Learning how vague to be is a skill you’ll pick up over time but it’s a highly adaptable process. It’s okay to write in your own voice, as long as it’s comprehensible.
If you see a problem to investigate write it down under Bugs. You can work on this bug now, or later.
If you see something that is in your way, looks complex, requires answers and so on, write that under Issues. You could escalate these now or make notes to deal with them later.
If you do testing that seems to be going away from the charter, that’s okay for a while, but if it gets too involved make a note to do a session on it later and go back to the mission you are on.
Finishing the Test Session
Write down the end time, so that you know how long you spent on the work.
Complete the checklist, including completing bugs, issues, and questions.
Make notes of other sessions you might want to do based on your findings from this one.
Consider adding material to a catalogue of ideas. A risk catalogue can be helpful for future testing, for example.
Optionally, do a debrief, where someone else reviews your work and offers new perspectives and opportunities.
Reviewing Your First Session
You will have some changes to make. You might re-order the template, change the checklist, change the wording, add things that are useful to other sessions or look for a new note taking tool (I use OneNote so I can add tags and use checkboxes). This is your opportunity to change the tools to work better for your process. The template doesn’t have to be standardised unless you’re going to process it with software or collect metrics about it - resist standardisation and formalisation because having each tester doing their best work their own way is the easiest way to have the system adopted and used.
How was it? How did you feel? Did you learn anything new?
Take a break, and then perhaps you’ll have time for another session!
Resources
SBTM
Original SBTM Article by Jon Bach
Note Taking
Notepad / Wordpad / Folders
OneNote
CherryTree
Yattie (full SBTM system with screen recorder)
Google Docs
Google Keep
Dropbox
Evernote, Joplin
Notion
Obsidian