We encourage our testers to blog and this post is by Manikant Pottumurty – one of our star testers from Hyderabad. Read on.
Testing professionals may have encountered the term ‘session-based testing’, but it may be helpful for business teams to understand the value and methods involved in session-based testing. This blog provides a brief discussion of the importance of session-based testing, how to perform the steps and introduces a handy tool that can be used to
document the results of the testing process.
What is session-based testing?
Session-based testing, simply put, is all about planning and executing a task that has to be performed within a given period of time. From the perspective of testing, it is a form of a timeboxed testing. Session-based testing can be used to introduce measurement and control to an immature test process and can form a foundation for significant improvements in productivity and error detection. It also helps testers document and describe the testing they perform.
This method aims to combine accountability and exploratory testing to provide rapid defect discovery, creative on-the-fly test design, management control and metrics reporting. Session-based testing was introduced first by James and Jonathan Bach in the year 2000.
So what and how is session based testing method used? Well, there are some elements of session-based testing that we need to understand.
Elements of the session-based testing
Mission: The mission in the session-based testing is to know what to test or what kind of problem are we looking at. Now technically speaking, it identifies the purpose of the session, helping to focus on the session, while still allowing for exploration of the system under test.
Charter: A charter is a goal or agenda for a test session. Charters are created by the test team prior to the start of testing, but they may be added or changed at any time. Often charters are created from a specification, test plan, or by examining results
from previous sessions.
Session: An uninterrupted period of time spent testing, ideally lasting one to two hours. Each session is focused on a charter, but testers can also explore new opportunities or issues during this time. The tester creates and executes tests based
on ideas, heuristics or any other source to guide them and record their progress. This might be through the use of written notes, video capture tools, mind maps or by any method as deemed appropriate by the tester.
The session report records the activities done in the test session.
Usually, this report includes:
- Areas tested
- How the testing was conducted?
- List of issues found during this session
- List of questions regarding the product
- Percentage of session spent on:
o Testing-creating and executing tests
o Session setup
o Bug investigation/Reporting
- Session start time and duration
Debrief: A debrief is a short discussion between the manager and tester (or testers) about the session report. Jonathan Bach uses the acronym PROOF to help structure his debriefing.
PROOF stands for:
- Past: What happened during the test session?
- Results: What was achieved by/in the test session?
- Obstacles: Was there any problems encountered during the session? What got in the way from testing the product in the best way?
- Outlook: What needs to be done in the product? What is still needed?
- Feel: What does the tester feel about this? Good, bad, could be better anything?
This is the last step, the collection of all relevant data and results of the sessions which were recorded in a total. Using standardized session reports, software tools can be used to store results for reporting or metrics. This allows reporting on the number of sessions per area or a breakdown of time spent on testing, bug investigation, and setup / other activities.
One of the advantages of using session based testing is that testers using session-based testing can adjust their testing daily to fit the needs of the project. Charters can be added or dropped over time as tests are executed and/or requirements
This method is important for a tester as it delivers valuable information on what is done and what is pending. It helps a tester to create or implement new ideas on how the testing can be done more precisely.
Handy tool for session based testing
A helpful tool that I encountered with to practice the session based testing is TestBuddy. This is a web-based tool that can be accessed using the link: https://www.testbuddy.co
The following sections describe some of the steps:
Once you successfully login into the application, you will see the following section where you have to add the charter/goal/mission (i.e naming your session)
Next, is a section where you can see the status of the session and there are various options that can be seen in the right panel of the screen.
Users can quickly assign some tags to the steps or phases during the session from the section at the side as shown in the image.
You can also download the session report into the local machine and share it locally.
You can also find some useful information when you click on the information button on the side panel.
Session-based testing is very effective when you need to control quality in a continuous development environment and helps in business decisions.
Write to firstname.lastname@example.org if you need help with quality assurance and testing solutions.