Now we will modify the Vera polices to support new business rules.
Sample Business Rules
We will configure Vera to support the following chart.
Sample Requirement: Manual and automated test case approval is based on Type and Regulation (A = Approver) below.
Type | Regulation | Technical | Business | Data Owner | Product Team Member | Product Lead | Quality |
---|---|---|---|---|---|---|---|
Data Migration | N/A | A | A | A | A* | ||
Configuration | None | A (2) | |||||
Configuration | GxP | A | A* | ||||
System | None | A (2) | |||||
System | GxP | A | A | A* | |||
Acceptance | None | A (2) | |||||
Acceptance | GxP | A | A* | ||||
N/A | SOX | A | A* | ||||
N/A | SOX & GxP | A | A | A* | A* | ||
Other | N/A | A** | A** | A*, ** |
*Approve after other approvals are complete. Quality will approve after Product Lead approval.
**prevent author approval
If field value is not set it should be evaluated as None.
Vera Analysis & Design
Based on the above requirement we will need to make the following modifications:
Update qTest Test Cases fields and field values in qTest Project.
Update Test Case Type field value
Add Regulation custom field and add field values
Update the qTest Test Case Record Type data fields in the Records Management Policy in Tutorial Policy Set
Modify the Approval Policy in the Tutorial Policy Set
Add new Approval Groups
Add and modify Approval Templates
The new business rules apply to the qTest Test Case and Automated Test Case Record Types. We will need to update the Approval Policy with the following Approval Templates:
Approval Template Name | Rank | Record Type | Constraints | Level 1 Approvers | Level 2 Approvers | Level 3 Approvers | Prevent Author Approval |
---|---|---|---|---|---|---|---|
Data Migration Test Case | 10 | qTest Test Case, Automated Test Case | Type = Data Migration | Technical, Business, Data Owner | Quality | N/A | false |
Configuration Test Case | 70 | Test Test Case, Automated Test Case | Type = Configuration, Regulation = None OR IsEmpty | Technical, Technical | N/A | N/A | false |
GxP Configuration Test Case | 20 | Test Test Case, Automated Test Case | Type = Configuration, Regulation = GxP | Technical | Quality | N/A | false |
System Test Case | 80 | Test Test Case, Automated Test Case | Type = System, Regulation = None OR IsEmpty | Product Team Member, Product Team Member | N/A | N/A | false |
GxP System Test Case | 30 | Test Test Case, Automated Test Case | Type = System, Regulation = GxP | Technical, Business | Quality | N/A | false |
Acceptance Test Case | 90 | Test Test Case, Automated Test Case | Type = Acceptance, Regulation = None OR IsEmpty | Business, Business | N/A | N/A | false |
GxP Acceptance Test Case | 40 | Test Test Case, Automated Test Case | Type = Acceptance, Regulation = GxP | Business | Quality | N/A | false |
SOX Test Case | 50 | Test Test Case, Automated Test Case | Type = SOX | Product Team Member | Product Lead | N/A | false |
SOX & GxP Test Case | 60 | Test Test Case, Automated Test Case | Type = SOX & GxP | Technical, Business | Product Lead | Quality | false |
General | 100 | Test Test Case, Automated Test Case | N/A | Technical, Business | Quality | N/A | true |
Rank determines the order Route Templates are evaluated by Vera when a record is routed for approval. Use Rank to ensure Constraints are evaluated in the proper order. General is the lowest rank so it is the last Approval Template evaluated.
qTest Project Configuration
First we will look at qTest project Field Settings for Test Case.
We need to update the Test Case Type Combo box list values by adding:
Data Migration
Configuration
System
Acceptance
We need to add a new Test Case custom field Regulation Combo box and add the following list values:
None
SOX
GxP
SOX & GxP
Vera Configuration
Now that you evaluated the business rules and updated qTest, you can update the Records Management Policy and the Approval Policy.
Records Management Policy updates
We are going to update the Records Management Policy from Add Test Run Records to Records Management Policy . Open VeraRMPTutorial-part2.json in an editor for modification.
Add Type and Regulation to the qTest Test Case Record Type in addition to the existing fields, Status, Description and Precondition. The Automated Test Case Record Type inherits fields from the qTest Test Case Record Type with
"Base Record Type": "qTest Test Case"
element."Fields": [ { "Name": "Status", "Is Data": true }, { "Name": "Description", "Is Data": true }, { "Name": "Precondition", "Is Data": true }, { "Name": "Type", "Is Data": true }, { "Name": "Regulation", "Is Data": true } ] }
Here is the updated qTest Test Case Record Type in the Records Management Policy with above code block:
{ "Records Management Policy": { "Version": "1.0.0.0", "Record Types": [ { "Name": "qTest Test Case", "Definitions": [ { "Systems": ["qTest"], "Item Types": ["test-case"], "Singular Name": "Test Case", "Plural Name": "Test Cases" } ], "Author": { "Source": "Route Owner" }, "Constraints": [ { "Type": "Field Is Not Equal", "Name": "Automation", "Value": "Tosca" } ], "Fields": [ { "Name": "Status", "Is Data": true }, { "Name": "Description", "Is Data": true }, { "Name": "Precondition", "Is Data": true }, { "Name": "Type", "Is Data": true }, { "Name": "Regulation", "Is Data": true } ] }, { "Name": "qTest Test Step", "Definitions": [ { "Systems": ["qTest"], "Item Types": ["test-step"], "Singular Name": "Test Step", "Plural Name": "Test Steps" } ], "Fields": [ { "Name": "Description", "Is Data": true }, { "Name": "Expected Result", "Is Data": true } ] }, { "Name": "Automated Test Case", "Base Record Type": "qTest Test Case", "Definitions": [ { "Systems": ["qTest"], "Item Types": ["test-case"], "Singular Name": "Test Case", "Plural Name": "Test Cases" } ], "Author": { "Source": "Route Owner" }, "Constraints": [ { "Type": "Field Is Equal", "Name": "Automation", "Value": "Tosca" } ] } ] } }
Save the Records Management Policy as VeraRMPTutorial-part3.json
Now we have a Records Management Policy configured for the new Test Case business rules. The completed JSON file with qTest Test Case update can be downloaded:
Approval Policy updates
We are going to update the Approval Policy from Add Approval Template to Approval Policy. Open VeraAPTutorial-part1.json in an editor for modification.
First you will update Approval Roles, then you will add the Approval Templates in Rank order to make it easier to manage and troubleshoot.
Approval Roles
There are new Approval Roles you need to add to the Approval Policy: Data Owner, Product Team Member and Product Lead.
Approval Templates
Data Migration Test Case
Configuration element | Value |
---|---|
Name | Data Migration |
Rank | 10 |
Record Type | qTest Test Case, Automated Test Case |
Constraints | Type = Data Migration |
Level 1 Approvers | Technical, Business, Data Owner |
Level 2 Approvers | Quality |
Prevent Author Approval | FALSE |
Approval Template configuration