A session is not a test case or bug report. It is the reviewable product produced by chartered and uninterrupted test effort. A session can last from 60 to 90 minutes, but there is no hard and fast rule on the time spent for testing. If a session lasts closer to 45 minutes, we call it a short session. If it lasts closer to two hours, we call it a long session. Each session designed depends on the tester and the charter. After the session is completed, each session is debriefed. The primary objective in the debriefing is to understand and accept the session report. Another objective is to provide feedback and coaching to the tester. The debriefings would help the manager to plan the sessions in future and also to estimate the time required for testing the similar functionality.
Session-based testing is a software test method that aims to combine accountability and exploratory testing to provide rapid defect discovery, creative on-the-fly test design, management control and metrics reporting. The method can also be used in conjunction with Scenario testing. Session-based testing was developed in 2000 by Jonathan and James Bach.
The debriefing session is based on agenda called PROOF.
- Past: What happened during the session?
- Results: What was achieved during the session?
- Outlook: What still needs to be done?
- Obstacles: What got in the way of good testing?
- Feeling: How does the tester feel about all this?
The time spent “on charter” and “on opportunity” is also noted. Opportunity testing is any testing that doesn’t fit the charter of the session. The tester is not restricted to his charter, and hence allowed to deviate from the goal specified if there is any scope of finding an error.
A session can be broadly classified into three tasks (namely the TBS metrics).
- Session test up: Time required in setting up the application under test.
- Test design and execution: Time required scanning the product and test.
- Bug investigation and reporting: Time required finding the bugs and reporting to the concerned.
The entire session report consists of these sections:
- Session charter (includes a mission statement, and areas to be tested)
- Tester name(s)
- Date and time started
- Task breakdown (the TBS metrics)
- Data files
- Test notes
For each session, a session sheet is made. The session sheet consist of the mission of testing, the tester details, duration of testing, the TBS metrics along with the data related to testing like the bugs, notes, issues etc. Data files if any used in the testing would also be enclosed. The data collected during different testing sessions are collected and exported to Excel or some database. All the sessions, the bugs reported etc can be tracked using the unique id associated with each. It is easy for the client as well to keep track. Thus this concept of testers testing in sessions and producing the required output which are traceable is called as Session based test management.
Tools available for Session Based Testing:
- Session Tester – http://sessiontester.openqa.org/
- Rapid Reporter – http://testing.gershon.info/reporter/
- Test Explorer – http://www.testexplorer.com/
References – Software Testing Guide Book – Software Testing Research Lab – http://www.SofTReL.org