Solution Steps
The solution is composed of four parts that are performed one after the other.
It is assumed that the template file exists and it is well formed. There are a number of different solutions to create templates from raw xml\xsd or json files or from meta data libraries. See the solution library to look for these solutions.
The solution uses several components to complete the various processes and then finally build the messages. These are:
Component | Flow |
Import Excel Into Modeller | C:\VIPTDM\CreateModellerModel\GenerateModellerModel.vip |
Get Sequences | C:\VIPTDM\GetSequences\GetSequences.vip |
Generate CSV | C:\VIPTDM\DataGenCSV\DataGenCSV.vip |
Resolve CSV | C:\VIPTDM\MasterFileController\ResolveCSV.vip |
Master File Controller | C:\VIPTDM\MasterFileController\MasterFileController.vip |
Copy Files To Folder | C:\VIPTDM\CopyFileToFolder\CopyFileToFolder.vip |
Export to Git | C:\VIPWork\AttachFilesToGit\AttachFilesToGit.vip |
Jira Attach file to Issue | C:\VIPWork\JiraAttachFileToIssue\JiraAttachFileToIssue.vip |
At the end of the solution see more details on how you could use these components as part of your automation process.
You can also use other solutions in conjunction with this solution, these are:
Solution |
|
Making Templates | Creating templates from meta data or sample messages |
Step 1 – Creating a model inside Test Modeller
Firstly, edit the template file to make sure any variables you wish to model are correctly defined.

The variables that will be replaced need the format data. Followed by the variable name.
Now you are ready to create your model. Inside VIP Executor look for the group Model Management

Model Management Menu
Choose Create Model From File Template

Example completed form to create model of the example1-template

Example run results from model creation process
Step 2 – Build the model of data variations
The model has been created – open it in the model editor.

Created base model from template
If you have a look around the blocks you can see values being assigned.

Assigned Test Data values


Assigned Automation Object variables – Generate CSV – is being called
The model is using one of the components Generate CSV. This component will take in the variables and create a merged csv file for each test case.
Now spend some time adjusting the model to include business variations.

Example model of variables and matching test cases
Now execute the creation of the csv

Submit the data creation process
Choose Find Test Data Chains – Hopper to submit the initial submission.

This will create the initial csv – which you can check to make sure you have assigned the values correctly.

Example csv created by the model
Step 3 – Add in the post process to create the messages
Add in an additional Start and End node to the model. These will be used to define any post process required, the primary one being to merge the csv and the template to create the messages.

The model with Start and End added
Open the Data Catalogues and choose the Test Data Catalogue used in installation of the solution earlier, select the new Start node on the pallet and choose the automation activity Master File Controller and click Import
See the documentation for the component Master File Controller

And then click Save

You don't need the Par1,Par2.. blocks so you can remove them.
New Data Automation Activity path

You will need to adjust the created variables

Choose the variables
You can optionally change the default name of the files to be created.

Click on the cog and choose edit

Here, the suffix has been changed to .xml
Also change

To the name of the file suffix you need.
If you wish to change the location of your stored file templates, edit this variable as well

Now regenerate the test cases.
You will see a new test case has been added.

Edit the Test Name to start with @Post

Before you submit the job to make sure the messages are being created correctly edit the file
C:\VIPTDM\MasterFileController\MasterFileControl.xlsx
This contains the definition of the post processes you wish to run.

The processes to be run by MasterFileController
You may wish to create different version of this spreadsheet, you will need to adjust the variable

To point to the new spreadsheet
Now execute the process:
Find Test Data Chains – Hopper
As before


The returned messages

Example Message
Step 4 – any additional post process steps.
You can add in any processes you like to the @Pre or @Post test cases and they will be executed, for example:

The first path – uses three components chained together: Resolve CSV, Copy Files To Folder & Import into Neo4j
The second path – use the component: Export CSV
This method allows you to see what automation processes are being used and to select particular paths when you are creating data or running automation processes. In the case above we use only one post process MasterFileController and we leave any post process to this component.
The MasterFileController component is a powerful utility that allows other components to be called as part of a chain of activities. These are controlled by editing
C:\VIPTDM\MasterFileController\MasterFileControl.xlsx
This contains the definition of the post processes you wish to run.

The processes to be run by MasterFileController

The Parameters used for each Component
If we use the above configuration and rerun our automation process, check the log file:

You can see the copy files and the export to git has worked successfully

In git you can see the messages have been stored
Adding in Additional components to enhance the functionality of the message Solution
Suggested components are:
Get Sequences – Get unique values
This component will return a unique sequence number or timestamp.
You can return multiple sequences in one go and, in addition, return multiple results for one sequence
In the following example, we have given the component a list of sequence names

when the component is run the values are assigned to variables. These output variables can be assigned as input to other components.

The returned sequence variables are defined in the output parameters

The variables become inputs to other components, in this case we are assigning variables into the component Generate CSV
Copy Files to Folder – copy any file from one location to another
This is very useful if you want the data from the completed job to be copied to a fixed location, for example:
Copy messages into a folder for processing by consumption by a message queue
Copy messages into a folder for use as part of a Jenkins automation build
Copy messages into a folder to be synchronized into Git



All the files created will be on the server in a folder linked to the job id, for example:

When you are defining the Source Folder this will be defined as ?workdir this will be substituted by the job engine to the real location.
Export to Git
A very straight forward component that runs a git push based a specific folder. So is often used in conjunction with Copy Files to Folder
Jira Attach file to Issue
Allows messages or files to be attached to Jira test case
Resolve CSV
This component can be used to take a csv file and issue a resolve and create a new version with a suffix of .resolved.csv and functions enclosed in {} will be resolved.
The resolution allows TDA functions to be incorporated into processes as csv, an examples of this is:=DataGen.Random.RandomInt(1,100)
You can also perform Test Data Catalogue find or makes, an example of this would be:
{parTestID=195,parBarcodeType=634STPremium,parStartString=0039328350024500224}
TEST MODELLER SOLUTIONS AND COMPONENTS MESSAGE TEMPLATE