Normally, testers write scripts on their own, which can be time-consuming, difficult to ensure 100% coverage, and hard to communicate precise requirements coverage achieved to critical stakeholders and clients.
Inside Xray Enterprise, the new test case design tool, Test Case Designer (TCD), takes a model-based approach to designing more powerful tests. The tool’s algorithm uses pairwise/combinatorial methods to generate optimized tests based on the parameter models.
Now, business and technical teams can collaborate to create a shared understanding of testing scopes and approach test creation with 100% confidence in the efficiency and thoroughness of the tests.
In this 2 part blog series, we’re going to share how the Test Case Designer helps you:
- Save time in creating tests;
- Save time in scripting tests for manual or automated execution;
- Communicate and agree upon testing scopes across business and technical teams;
- Gain confidence in critical coverage achieved;
- Make smarter, more data-driven execution decisions.
Let’s dive in to understand the test case design approach.
Introducing model-based test case design
Model-based test design is simple to understand - instead of receiving requirements and immediately writing your test scripts one by one, you start by analyzing your requirements and, through that analysis, build models of critical testing parameters that need to be covered in your tests.
The building blocks of every Test Case Designer test are parameters and parameter values. Parameters are the critical factors that must be tested. Parameter values are the different ways in which those parameters will vary.
When deciding whether or not a factor within your requirements/systems are critical to include as parameters inside your test model, you should ask yourself two questions:
- Is this factor varying in different ways?
- By varying, is it impacting how the system works in different ways?
If you can answer “yes” to both of these questions, you should include that parameter with its values within your test model.
Let’s take a look at a quick example.
Suppose you aim to functionally test a (very simplified) airline ticket reservation system and ensure all critical paths and interactions are covered in your tests. Based on your hypothetical expert business knowledge of how this system behaves, a critical parameter is “Flying to.”
How “Flying to” is varying (parameter values) are the United States, the Philippines, and India (again, this is a simplified list). By defining the parameter in this way, you are saying that depending on which destination selection an end user makes, it will certainly have a unique impact on how the ticket reservation system behaves.
Here is what your built-out model could look like, including all of your critical parameters and their values, in a Mind Map view inside the Test Case Designer:
Inside the Test Case Designer, these parameters and values will be 100% covered in your generated, optimized scenarios.
What are the benefits of this model-based approach to creating better tests?
A shared understanding of the testing scope
By taking a more analytical, collaborative approach to designing models and thinking through the critical variation ideas from requirements, you will inherently better understand business requirements and systems under test.
In addition, the Mind Map view above is an excellent way to communicate your approach in what you will test and how it will be tested to business analysts, developers, other testers (the “3 Amigos”), managers, clients.
Everyone can quickly get on the same page about the scope and provide feedback, and gaps in understanding across business, technical, and client teams quickly disappear. The good news is - the Mind Map is automatically generated inside the Test Case Designer (whether you have TCD edit access or read-only access), so you can quickly share it with others.
Time savings in making changes to tests
Inside the Test Case Designer, updating models is extremely easy and quick when building these models and receiving feedback from others. All you have to do is edit/add to your model, and the tool takes care of the rest - automatically updating your Mind Maps, optimized tests, analysis reports, etc. You no longer have to go through each test individually to update impacted tests when changes need to be made, or new requirements are written.
When using Test Case Designer, you have learned that you will take a model-first approach to design more thorough and efficient tests. In part 2 of this blog series, we will learn how the Test Case Designer tool generates optimized scenarios and what we mean by “optimized.” Stay tuned!
Adopt quality at scale with optimized test case design
Inside Xray Enterprise, the Test Case Designer allows you to test less, cover more, and release - all while adopting quality at scale and delivering the highest quality software.
With these model-based test optimization approaches, you gain 100% confidence in what and how you are testing to achieve maximum coverage, doing so with as little effort as possible.
Test smarter, not harder, with Xray Enterprise and Test Case Designer.