Skip links

The Why and How of Session Based Testing (SBT)

Jump To Section

With testing efforts and approach transforming Agile adoption, testers in the teams have struggled to keep the pace and deliver high quality

With testing efforts and approach transforming Agile adoption, testers in the teams have struggled to keep the pace and deliver high quality. While the intent is to bring more inclusiveness with testing efforts, the focus for testers is now more on understanding business needs, end user experience, and product exploration. Agile teams need to do experience based testing more often to reflect upon key business and end user perspectives and build a strong feedback loop for product quality. Session based testing is a great way to bring along all team members and have focused and dedicated time spent on exploring the application under test. This article intends to cover how to practice Exploratory Session Based Testing within your teams and projects.

Why Opt for Session Based Testing (SBTs)?

Exploratory testing is a very strong discipline and a highly undervalued practice. Often, team members indulge in exploratory testing only if they have time. The idea of SBTs is to bring in a highly intuitive way of exploring and experimenting with the underlying SUT.

How can we benefit? 

  • Bring in a natural way of testing without any preparation, pre-requisites, or strict guidelines.
  • Versatile approach of testing
  • Finds issues much faster as compared to traditional script- based testing
  • Triggers creativity and critical thinking

Pre-requisites: 

A team of 2 – 3 members can group up and arrange for an hour long dedicated uninterrupted Exploratory Testing (ET) session. The session should define a Mission or Charter. The team chooses to spend this dedicated slot to work as a team and go bug hunting. A typical approach is to be more ad-hoc and try odd use cases while trying to break the system. One test idea leads to the other with a group of people interacting.

Guidelines:

  • Time box the exercise to typically 1 – 2 hours. Although, having extended SBTs with smaller breaks is absolutely fine.
  • Restrict external interferences – turn off email notifications, instant messaging, etc.
  • Learn more about the product and uncover the unknowns (go beyond your regular regression testing)
  • Choose your mission around areas that are end user critical from a business standpoint (UI / API / Backend / no restrictions on the app layers to test)
  • Think out of the box to test and break areas in scope of the mission
  • Record the entire session for future references (this also helps in record keeping)
  • Assign one person as a record keeper – this person would be responsible for capturing and documenting the findings from the ET session
  • If possible, bring along a mix of Engineering / QA / PO knowledge to make the session more effective
  • Cap every session to max 2 hours. If longer sessions are needed, break them into n * 2 hours.
  • Avoid too much paperwork and keep it simple

Measuring Outcomes and Metrics:

  • Allocate a Session ID to every SBT (maybe use Jira to capture the same)
  • Include charter summary, date, and time along with testers / participant details
  • Every SBT should follow with a Debriefing meet with leads where we summarize the PROOF:
  • Past – What happened during the session?
  • Results – What was achieved during the session?
  • Obstacles – What got in the way of good testing?
  • Outlook – What still needs to be done?
  • Feelings – How does the tester feel about all this, and how can we improve next time onwards?
  • [Owner: Record Keeper] Derive a high-level view, maybe in percentages, of the time spent (Avoid exact numbers) in a particular session as per following categories:
  • Time spent in Setup (an upward trend in setup time indicates poor Test Environment setup. Team should identify such challenges and work towards getting a more testable and ideal test environment in place)
  • Time spent in actual Bug Hunting and Test Execution (this is the core intent of SBTs. A healthy time spent here means sessions are going well. Although, make note of the time spent here is mainly around the original mission statement or did the team diverge into other threads of testing)
  • Time spent in Investigation, Deep Analysis, and Reporting (this can be part of the SBT, but at times, team would look outside for gathering more information specific to the observations found)
  • [Owner: Record Keeper] Derive a summary of total issues found and ensure their closure (either as false alarms or effective defect tracking ticket. Make sure all observations are brought to logical closures)
  • Any SBT can also have certain opportunities as an outcome. Opportunities are anything found outside the mission or charter. It is perfectly fine to divert from the mission. It is encouraged that we know and categorize missions and opportunities separately
  • Few opportunities could be vast to plan a completely dedicated SBT
  • You can also reflect upon the SBT sessions with project status reporting. Example – We conducted 6 SBTs this cycle and found 15 blockers, two critical and four medium issues, along with three new opportunities.

Takeaways:

SBTs are a great way to collaborate. In the Agile world, with testers finding little time away from their regular deliverables, story testing, and automation activities, SBTs are a great way to break monotonous testing and come closer to the business as well as end user pain areas. The dedicated and focused “no interruption” slots bring in tremendous business and functional learnings to the team and encourage critical thinking. As the team matures with running session-based testing (SBTs), it paves the way for bringing a fun element to testing and at the same time bring up dramatic improvements in overall quality.

Picture of Kshitij Bangur

Kshitij Bangur

Latest Reads

Subscribe

Suggested Reading

Ready to Unlock Your Enterprise's Full Potential?

Adaptive Clinical Trial Designs: Modify trials based on interim results for faster identification of effective drugs.Identify effective drugs faster with data analytics and machine learning algorithms to analyze interim trial results and modify.
Real-World Evidence (RWE) Integration: Supplement trial data with real-world insights for drug effectiveness and safety.Supplement trial data with real-world insights for drug effectiveness and safety.
Biomarker Identification and Validation: Validate biomarkers predicting treatment response for targeted therapies.Utilize bioinformatics and computational biology to validate biomarkers predicting treatment response for targeted therapies.
Collaborative Clinical Research Networks: Establish networks for better patient recruitment and data sharing.Leverage cloud-based platforms and collaborative software to establish networks for better patient recruitment and data sharing.
Master Protocols and Basket Trials: Evaluate multiple drugs in one trial for efficient drug development.Implement electronic data capture systems and digital platforms to efficiently manage and evaluate multiple drugs or drug combinations within a single trial, enabling more streamlined drug development
Remote and Decentralized Trials: Embrace virtual trials for broader patient participation.Embrace telemedicine, virtual monitoring, and digital health tools to conduct remote and decentralized trials, allowing patients to participate from home and reducing the need for frequent in-person visits
Patient-Centric Trials: Design trials with patient needs in mind for better recruitment and retention.Develop patient-centric mobile apps and web portals that provide trial information, virtual support groups, and patient-reported outcome tracking to enhance patient engagement, recruitment, and retention
Regulatory Engagement and Expedited Review Pathways: Engage regulators early for faster approvals.Utilize digital communication tools to engage regulatory agencies early in the drug development process, enabling faster feedback and exploration of expedited review pathways for accelerated approvals
Companion Diagnostics Development: Develop diagnostics for targeted recruitment and personalized treatment.Implement bioinformatics and genomics technologies to develop companion diagnostics that can identify patient subpopulations likely to benefit from the drug, aiding in targeted recruitment and personalized treatment
Data Standardization and Interoperability: Ensure seamless data exchange among research sites.Utilize interoperable electronic health record systems and health data standards to ensure seamless data exchange among different research sites, promoting efficient data aggregation and analysis
Use of AI and Predictive Analytics: Apply AI for drug candidate identification and data analysis.Leverage AI algorithms and predictive analytics to analyze large datasets, identify potential drug candidates, optimize trial designs, and predict treatment outcomes, accelerating the drug development process
R&D Investments: Improve the drug or expand indicationsUtilize computational modelling and simulation techniques to accelerate drug discovery and optimize drug development processes