Blog - Xray

Alternatives to Session-Based Test Management - Xray Blog

Written by Ivan Filippov | May 28, 2024 3:36:32 PM

In our previous articles about exploratory testing, we focused on session-based test management (SBTM), one of the more popular approaches. SBTM aligns clearly with the Xray Exploratory App workflow and terminology.

As a quick refresher, SBTM is a more structured technique for performing exploratory testing. The key idea is to organize delimited sessions which are uninterrupted blocks of reviewable, chartered test effort. We can represent SBTM components in 3 stages:

  1. Define the goal with risks in mind and create a test charter;
  2. Explore in a timeboxed fashion and document findings;
  3. Review your results with the team.

But session-based test management is not the only way, and there are other effective techniques for exploratory testing. In this article, we’ll discuss them at a high level and highlight how Xray Exploratory App can support them.

 

Alternatives to Session-Based Test Management and how Xray Exploratory App fits

Broadly, there are two categories - structured and freestyle. For the first one, we will discuss scenario and strategy-based approaches. Before we dive in, here is a quick summary of the main characteristics:

Scenario-based

This technique organizes exploratory testing into “scenarios” — realistic use cases that describe how the system should perform in a given context. It helps verify the app's value and functionality and mimic users’ perspectives and behaviors. 

A common artifact to support this technique is a user story that typically focuses on 1 scenario at a time and its exploration from all angles. The scenario definition is pretty high-level, leaving plenty of room for testers to dive into setup, input, and behavior nuances based on their learning and observation.

Similar to charters, user stories guide and help ensure more comprehensive coverage but do not limit exploration creativity. However, the scenario-based approach does not have enforced time limits, which may help with interruptions better. Another key difference is the source — charters are often defined by testers, while scenarios originate from the business side (sometimes represented as flow diagrams).

Some popular ways of thinking about scenario types are:

  • Happy path/highest interaction volume
  • New feature/oldest features
  • Niche user groups
  • Key integrations
  • Disaster recovery/break as much as possible

We’ll also briefly mention another type of structured exploratory testing - thread-based. It is conceptually similar to the scenario-based one, but the unit of work is a “thread” – a logical or functional area of the application. It is a useful approach to keep in mind for navigating highly complex and interdependent systems.

 

Xray Exploratory App workflow

Starting from Jira, business analysts would create a story issue (or multiple) with the scenario description. From that story, we would add an exploratory test (custom type) to immediately establish traceability, with any relevant notes about methods or heuristics for exploratory testing appended to the definition. 

Then we trigger the execution in Xray Exploratory App from that test issue -> Test Runs tab. Both Description and Definition will be automatically populated.

Even though the start button references “session”, we would ignore the timer for this exploration type and proceed with evidence gathering and note taking. If we are interrupted, we can save the session file and open it later. Once the exploration is done, the report is imported back to the test issue and the execution status update is visible on the story.

 

Strategy-based

This technique is typically used by testers with significant, intricate knowledge of the applications to identify trickier defects with more tailored strategies. It involves a wide range of predetermined methods, including boundary value testing, equivalence techniques, error guessing, heuristics, and more. 

The strategy-based approach focuses more on the inner workings of the systems without reviewing possible scenarios from the user perspective, which potentially means greater breadth and depth than other techniques.

 

Xray Exploratory App workflow

Since your story dependency is minimal, you could start directly from Xray Exploratory App (as it is a standalone desktop app), specifying any necessary checklists of methods and heuristics in the session description.

Evidence gathering is an irreplaceable part of exploratory testing, regardless of the approach, so your “session” experience would be similar across techniques - taking notes, capturing screenshots, etc. Once the exploration is done, submitting the results to Jira and Xray will automatically create the Test and Test Execution issues, so you don’t have to worry about that, and you can also easily link the requirement story at that point.

One additional benefit to highlight with version 3 of Xray Exploratory App (not limited to this technique) - the cloud storage allows you to easily share session files with colleagues, which could significantly enhance exploration coverage (e.g. you specialize in certain strategy-based aspects while your teammates excel at others - all insights can be consolidated in a single “session” report).

 

Freestyle

This technique embraces the ad-hoc approach and does not impose any predefined structure or format on exploratory testing. The testers can leverage any methods, heuristics, or additional tools they find relevant. This type of exploratory testing is especially helpful when you need to familiarize yourself with the application quickly, or the overall scope is small.

A couple of things to keep in mind:

  • Freedom does not mean complete randomness, just that all components of the exploration strategy are in the tester’s head.
  • The lack of artifacts for preparation and the flexibility of execution does not mean the lack of reporting.

 

Xray Exploratory App workflow

The flow is similar to the strategy-based one—you would start from the Xray Exploratory App, skip the metadata session fields, and jump into the exploration, ignoring the timer. The tool helps you perform note-taking and evidence-gathering functions, and then you can export the compiled findings as a PDF from the “end session” screen. 

If later on you want to revisit your “application paths” with a more structured approach, you can resume the session from your machine or from the cloud storage (in version 3).

All these techniques embody the spirit of exploratory testing and emphasize the personal responsibility and freedom of testers. The techniques we have discussed are not mutually exclusive - be flexible and use what works for you. The core decision factors are coverage, traceability, and collaboration/stakeholder communication.

For smaller teams or scopes, with a solid grasp of all the critical risks, freestyle exploratory approach will fit very well. On the other hand, if there are too many risks to keep in one’s mind and/or there is a large pool of both testers and stakeholders, one of the more structured techniques fits better in order to test as fast as possible with thorough coverage and minimum redundancy. In that case, a repository of charters or user stories will help prioritize the risks, consolidate reports, and enhance transparency. As you have hopefully learnt, Xray Exploratory App has the flexibility to support you regardless of your approach.