‘early Model Based Testing’ (eMBT)
‘early Model Based Testing’ (eMBT) is a software testing approach to ensures the optimization of the test case design phase. But more importantly, eMBT stimulates communication and collaboration between all stakeholders (business and technical stakeholders) with the aim of getting early feedback and a shared understanding of the requirements in an early stage of the SDLC.
eMBT consists of the following 4 phases:
1. Exploratory
2. Review
3. Coverage
4. Checking
In this blog, I aim to give some insight into the 4 phases of eMBT and how the eMBT tool TestCompass can support this eMBT approach to testing with a representative example of an app ‘price calculator hardware store’.
It is not intended to describe the complete functionality of TestCompass. For this, I refer to the Quick Start Guide and the various instructional movies on the website of TestCompass https://www.compass-testservices.com.
Example eMBT approach
The following requirements are stated.
App price calculator hardware store
A hardware store sells hammers (5 euro) and screwdrivers (10 euro). If a client spends more than 200 euro, then the client gets a discount of 4%. If a client spends more than 100 euro, then the client gets a discount of 20%. If a client buys more than 30 screwdrivers, there is an additional discount. |
1. Exploratory phase
The first phase is the exploratory phase. During this phase, the goal is to explore and examine the requirements and ensure that there are no open ends, ambiguities, inconsistencies, contradictions, etc. And there must be a shared understanding within the entire team, both business and IT.
We start by setting up a test model in TestCompass based on all the information collected relating to the requirements. Ideally this phase starts as soon as the business (product owner) defines the requirements and would involve the development team. However, in practice it often happens that this phase begins later, in the refinement sessions or when the requirement is picked up by the development team, as a user story.
The test model in TestCompass is a graphical model, based on the principles of a flowchart but with some specific features. The test model has a high level of abstraction, so it can be easily understood by all team members, both business and technical. This promotes clear communication and collaboration regarding the requirements in a very early stage.
Flowcharts are a general-purpose type of graph that can be used for testing. Graphs are used in many ways in software engineering, and they come in all kinds of flavours and styles. They may differ in style of nodes, way to draw and connecting them, and notational conventions. But in the end, they all consist of a collection of objects (called nodes and drawn as circles, ellipses, or boxes) and relations between them (called edges and drawn as lines or arrows).
To draw a test model in TestCompass, the following 5 nodes can be used.