Coverage in Test Case Design
The Art of Modelling series from Curiosity Software – Learn how collaborative effort can impact your test case design and the test coverage that you're able to achieve.
Align Collaborative Effort
It’s time to talk a little bit about collaborative effort and how it can impact your test case design and coverage that you’re able to achieve within your tests. We want to build high quality tests while confirming that we’ve got good coverage levels. To do this, we need to align our collaborative efforts.
Determining the critical points of a model allows the team in unison to work together whilst minimizing the impact of change or the risk of that particular change is really important. Now, with many teams working together on a single system, you can see how dependencies and risks can be understood. Using Coverage Profiles, for example, can really help us understand the impact of a wider change, especially when part of a bigger narrative - multiple teams prioritizing their tests, prioritizing their work in different orders.
Use Test Modeller’s Coverage system to derive an assured set of Test Cases; and that can be from a team’s perspective, it can be from a group’s perspective. But as long as we’ve got priority and flexibility, it allows us to pinpoint where we want our testing to focus. So let’s get into some real examples that we want to talk through and show this in action - making sure that we maintain high quality, good criteria, and a defined Test Objective.
Specify Your Testing Criteria
This clip takes a quick look at how we can use Coverage Profiles on quite a simple model, but also to make sure that we're getting highly efficient tests. Coverage and Coverage Profiles inside Test Modeller are a really important way of being able to make sure that we are testing all the Scenarios that we want to, and that we are making sure that those combinations are correct and sensible.
Follow the model how we’ve modelled out a straightforward inventory, model here, that's got a few Scenarios in it. So, you can see that we've got a series of products that are part of our inventory. Depending on the stock level of those products, we'll then declare the amount of discount that is potentially available. If we've got a high amount of that stock, our discount will be less.
The Coverage Profile being used varies based on the criteria that needs testing – as an example, low discount and high discount. What this Coverage is going to essentially give us are the specific amounts of tests and really reduce potentially the number of combinations, making sure that our low discount model is sort of enforced; and you'll see the model highlighting those details for us.
Equally, if we switch that round to a high discount model, - it's already been generated - we can see that we are still testing all the various Coverage combinations for each of those products, but we are changing the amount of discount by the Tags that we associate onto our Coverage Profile.
Define The Test Objective
This clip shows you how, in an end-to-end test flow, we can use Coverage in order to target the kind of tests we want for a very specific Use Case. Here we have a master model, which has the end-to-end test flow. And here we have the specific module that he’s working on.
Shown is that, for this online store, we've added a new store branded credit card, and that store branded credit card gets an additional 2% for any purchase that is made. So first Mark Tags some of these nodes has either store-branded or non-store branded: that doesn't change anything in this model; but if I go back to the End-to-End model and look at the Coverage profiles, we can define a specific way of… a specific set of Coverage, so that for anything that is Store-Branded-Card there is defined a High Coverage and anything that isn't Store-Branded-Card, is seen to be excluded for now.
On generate the Coverage and seeing this reflected in the Test Cases we can see – on opening the Subflow – that only Store-Branded-Cards; and then opening the previous module, which Ben (previous clip) was working on, we see that the flow is going through all the different discounts that are possible. So I'm combining a Full Coverage of the types of discounts with the very specific Coverage of the Store-Branded-Card.
Watch More of The Art of Modelling Series