Test Case Coverage
Search Knowledge Base by Keyword
Test Case generation can focus on certain parts of a system’s functionality, optimising testing based on time and risk. This uses the notion of “coverage”, where tests exercise or “cover” areas of a system’s logic to a required level, from being ignored to tested exhaustive.
Test Modeller offers a granular approach to test coverage, controlling the level of testing rigour for sets of blocks or subprocesses in a given model. Testing can then focus on new or critical functionality, without having to exhaustively test surrounding logic to the same degree. Testing confidence can increase as a result, while keeping run times low.
Profiles
The required level of coverage is set by feature within a given Coverage Profile. Several Profiles can be created for one model, in order to re-use Profiles and quickly regenerate tests that focus on certain features in future.
To create a new Profile, navigate to the “Test Generation” tab of the menu, and click “New” in the “Profiles” section of the menu:
Enter a name for the New Profile and click “Save”:
Previously created Profiles can be toggled between using the drop-down menu in the “Profiles” section of the menu, and their name can be edited by clicking “Edit”. You can Delete the selected profile by clicking “Delete”.
Feature Tags
In a given Model, blocks and Subprocesses can be tagged as “Features”. This enables coverage levels to be set within a given Coverage Profile for each Feature, generating test cases to exercise the tagged logic with varying degrees of rigour.
To tag blocks or subprocesses as a given Feature, navigate to the Test Generation tab of the menu and click “Features”. This will open the Feature Tags sidebar. Click a block or Subprocess, enter a name for the Feature, and click “Apply”:
Blocks assigned the same Feature Tag within a given Model will be treated as one Feature during test case generation.
Features assigned to a block can be browsed and editing by right-clicking a block, and navigating to “Features”.
Setting the Coverage for Features within a Profile
Coverage is set for Features by Profile. To set the level of test coverage for tagged Features, navigate to the Test Generation tab of the menu and click “Coverage”.
This will open the Coverage Profile Window:
Click “Reference” in the “Features” box and select the relevant Feature Tag:
Use the drop-down menu to assign a measure of coverage from “Ignore” to “Exhaustive” for each feature:
The “Default Coverage” drop-down sets the level of coverage for every block without a Feature Tag assigned. This is useful for focusing on new or critical functionality, while testing the surrounding logic as much as possible based on time. Test cases can be generated to exercise the broader model only insofar as it is required to reach the tagged features, or the broader model can be tested more rigorously if there is time.
Note: The “Ignore” Coverage metric will exclude any paths through a model that do not contain a tagged Feature. To use “Ignore”, a Start block for each path to be generated must be tagged as a Feature with a Coverage measure assigned to it.
Once Features and a Coverage Profile have been created, navigate to the Home tab of the menu and save the model. Test Case generation will now be performed based on the Coverage Profile assigned to the model.
-
-
-
- IEnumerable to Data Reader
- Data Table to List
- Nested String List to Data Table
- List to Data Table
- IEnumerable to List
- List to IEnumerable
- Remove from List
- Exists in List
- Value Exists in Dictionary
- Key Exists in Dictionary
- Remove from Dictionary
- Get from Dictionary
- Clear Dictionary
- Add to Dictionary
- Clear List
- Add to List
- Show all articles ( 1 ) Collapse Articles
-
-
-
-
- Introduction
- Overview of the Advanced Control Spreadsheet
- Refining the Control Spreadsheet
- The ProcessModel sheet – Toggling Subset Rules
- The Tables Sheet: Defining Metadata that will be read from the Source Database
- The ForeignKeys Sheet - Specifying which Foreign Keys to read from the Source Database
- Explanation of Remaining Sheets in the Control Spreadsheet (for reference only)
-
- Overview of Post-Subset Actions
- Add Primary Keys
- Add Foreign Keys
- Add Both Primary and Foreign Keys (The Composite ADDKEYS action)
- Validate that Primary Keys are Unique
- Validate that Foreign Keys are Unique
- Validate Both Primary and Foreign Keys (The composite ValidateKeys Action)
- Drop Foreign Keys
- Drop Primary Keys
- Drop both Primary and Foreign Keys (The composite DROPKEYS Action)
- Delete Orphans
- Truncate Data
- Drop Tables
-
-
- How to Configure the Synthetic Test Data Configuration Control Sheet
- Sample Commerce Configuration Sheet Examples
- Adding Event Hooks in Configuration sheet for custom functionality
- Use Event Hooks to call VIP Flows
- How the PreProcessVariables Table is used in the Configuration sheet
- PreProcess Variables and Parameters
- Using SQL Functions to query Databases and Using the Queries in Data Generation Functions
- Different Methods for Connecting to Source Databases
- Summary of the Process to Configure the Test Data Configuration sheet
-
-
-
-
-
- Test Modeller : System requirements (Windows, Linux)
- Test Modeller : Installation components
- Test Modeller: Software Pre-requisites
- Test Modeller Core (Linux) Installation
- Test Modeller Core (Linux) Optional – Active Directory
- Test Modeller Core (Linux) Optional – SSL Certificate Installation
- Test Modeller Core (Linux) Optional – Postgres LDAP
- Test Modeller – Maintenance
- The UI Recorder
-
-
-
- Articles coming soon
-
- Articles coming soon
-
-
-
- Welcome Selenium (Java)
- Prerequisites (Selenium Java)
- Configuration (Java)
- Scan an Existing Web App
- Build a Model (Java)
- Generate Automation Code
- Execute Tests (Java)
- Import existing framework / custom page objects (Advanced)
- Edit Code Templates (Advanced)
- Extend Test Modeller (Advanced)
- Common Problems
-
-
-