Description
The G-Families (or GFamilies) feature discovers related Domains ("Families") within an imported Database Schema based on relationships that have been set among imported Domains. Once families have been discovered, permitted users can view visual diagrams for families and create test data cases from them.
G-Families provides a visual grouping of related Domains to help focus testing. With a few clicks, users can automatically create a suite of cases from a discovered family.
In This Article
- What are the Benefits of G-Families?
- When Should G-Families be Used?
- When Should G-Families not be Used?
- Who Should Use G-Families?
- Supported Import Types
- How to Access and View G-Families
- How Does G-Families Work?
- Additional Information
What are the Benefits of G-Families?
- Users can focus on the related Domains that are necessary for specific test data challenges.
- Users can quickly categorize (unit, load, negative, etc.) and create a suite of cases.
- Users can create new cases from other G-Families when needed.
- G-Families provides a visual diagram of related Domains ("families") in Domain-specific and Entity-Relationship (ER) diagram formats.
- Provides test data architects, engineers, and testers with a better understanding of the data model.
When Should G-Families Be Used?
- Any time there is a complex data structure (e.g., database) where testing needs to be focused on a particular group of Domains (e.g., tables) at any given time.
When Should G-Families Not Be Used?
- Any time the data model is less complex and testing does not need to be performed on groups of Domains within the model.
Who Should Use G-Families?
- Org Admin
- Data Architect
- Test Data Engineer
Supported Import Types
G-Families will be available any time a user completes one of the following import methods:
- XTS
- XSD
- DDL
- JSON
How to Access and View G-Families
G-Families can be accessed in one of two ways:
Method 1 - JSON, DDL, and XSD Imports
- Select a Project within the Project Dashboard.
- Next, expand the Self Serve Options Menu and select G-Families.
Method 2 - XTS Imports
- Select a Project within the Project Dashboard.
- Next, expand the Self Serve Options Menu for a Project Version and select XTS Wizard.
- Select the Domain Family Wizard within XTS Wizard.
How Does G-Families Work?
- Required Prerequisites for XTS Imports
- Step 1 - Import an XTS, XSD, DDL, or JSON File
- Step 2 - Set Parent/Child Relationships between Domains
- Step 3 - Complete Project Setup
- Step 4 - Discover New Families
- Step 5 - Select a Family and Create Cases
Required Prerequisites for XTS Imports
The database schema will need to be exported using the genrocket -xts command. This will create an XTS file that can be imported into GenRocket. The schema will be used to create the required Domains and Attributes. For more information, please see Using GenRocket XTS – Extract Table Schema.
Step 1 - Import an XTS, XSD, DDL, or JSON File
Select a Project and Project Version. Then perform one of the supported import types for G-Families. Documentation for these steps can be viewed using the links below:
- How do I use the XTS Import Wizard?
- How to import Domains from XSD
- How do I create multiple Domains from a DDL?
- How to import Domains from JSON
Step 2 - Set Parent/Child Relationships between Domains
Parent/Child relationships must be defined before G-Families can be discovered. They can be reviewed and modified using the Domain Referencing Wizard (shown below).
Step 3 - Complete Project Setup
This step includes the following:
- Assign and/or Modify Generators for Domain Attributes (Generator Tuning)
- Assign one or more Receivers to each Domain
- Create Scenarios for each Domain
- (Optional) Create a Scenario Chain (or) Scenario Chain Set
Note - For XTS Imports, an entire set of wizards is provided to make the above steps easier. Click here to learn more.
Step 4 - Discover New Families
The next step is discovering new families by clicking the Find New Families button within the G-Families Management Dashboard. This request goes to the queue and happens automatically based on the imported schema and defined Parent/Child Relationships.
Detected families will appear in the Families Pane. They will have generic names (e.g., Family1, Family2) and can be renamed using the Pencil icon.
Step 5 - Select a Family and Create Cases
Cases can be created from each discovered G-Family. The first time a Case is created, GenRocket will create a suite with the selected category, and case(s).
IMPORTANT: Once Cases have been created from a G-Family, future changes will need to be made within the Case itself. Changes made to the G-Family will not be reflected within existing Cases.
- Click on the Plus (+) icon for a G-Family.
- Select a Suite Category (e.g., Beta, Negative, Load, Unit).
- (Optional) Enter a Case Name.
- Case Name Provided - The case will be created with the given name under the selected Category. The case will contain all the chosen Domains in the form.
- Not Provided - An individual case will be created for each selected Domain.
- Enter a Default LoopCount for all selected Domains.
- Use the checkboxes to select one or more Domains.
- Click the Save button.
The user will be redirected to the G-Cases Management Dashboard and can view the new case suite.
Additional Information
The following articles can be used to learn more about G-Families and see step-by-step instructions for the steps discussed above.
Topic | Description |
G-Families Management Dashboard | Learn more about the G-Families user interface, including: available options, viewing modes, and how to change what is displayed. |
How to Discover New G-Families | Learn how to discover new G-Families for imported Domains. |
How to Create and Manage Cases for G-Families | Learn how to create Cases for a selected G-Family. |