Playing Back Scripts Simultaneously (Multiple Groups) (MQ)
This scenario demonstrates playing back one or more scripts simultaneously to ensure the integrity of the MQ activity propagated by the application. For example, the sample application can be accessed by several phone operators at the same time. Use this type of testing to ensure the application will perform efficiently if accessed by multiple users.
This scenario begins by capturing activity from the entire customer order and credit inquiry application (Flowchart for the Sample Customer Order And Credit Inquiry Application) and then generating three scripts:
- One containing the MQ_PUTs issued by PDA016
- One containing the MQ_GETs issued by PDA016 to retrieve customer order information from PDA017
- One containing the MQ_GETs issued by PDA016 to retrieve credit authorization from PDA018
Activity Captured in Sample Scripts SCRMG001, SCRMG002, SCRMG003
The scripts then drive the rest of the application during playback. PDA017 Customer Order Inquiry Program and PDA018 Credit Inquiry Program should respond to each request in approximately the same amount of time. During playback, generate a Script Timing Summary and Response Time Summary to review the application’s performance.
This scenario requires manually combining the LOG files from each script creation before submitting the unattended playback job.
The rest of this section details each of these steps, except for capture. Use the filtering information provided in this discussion to generate scripts from sample repository REPOS1. If you wish to compare the scripts you generate to the sample scripts, run an analyze job on each script saving the sorted data. Generate a baseline HTML Exception Report to ensure that the script you created contains the same activity as the sample script.
Supporting sample files
The sample files supporting this scenario include:
- Repository: REPOS1
- Log:
LOGMG001
LOGMG002
LOGMG003
LOGMG000
The first three logs were generated during script creation. The last was created manually. It is combination of the first three logs.
- Script:
SCRMG001 (contains the MQ_PUT issued by PDA016)
SCRMG002 (contains the MQ_GET issued by PDA016 to retrieve customer order information from PDA017)
SCRMG003 (contains the MQ_GET issued by PDA016 to retrieve credit authorization from PDA018)
Filters
REPOS1 contains activity for the entire customer order and credit inquiry program (Flowchart for the Sample Customer Order And Credit Inquiry Application). Run through script creation three times to generate three scripts and three logs. Apply the following filters to isolate the desired activity. See Activity Captured in Sample Scripts SCRMG001, SCRMG002, SCRMG003 to see the application flow of PDA016 and the names of the queues it uses.
To create a script containing the MQ_PUT issued by PDA016, apply the following filters:
Field Name | RO | Filtering Criteria |
---|---|---|
Queue manager | EQ | * |
Object/Queue name | EQ | PDAPROD.H01AC013.CUSTOMER.QUEUE.ALIAS |
Event | EQ | PUT |
To create a script containing the MQ_PUT issued by PDA016 to retrieve customer order information from PDA017, apply the following filters:
Field Name | RO | Filtering Criteria |
---|---|---|
Queue manager | EQ | * |
Object/Queue name | EQ | PDAPROD.H01AC013.CUSTOMER.RESPONSE.QUEUE.ALIAS |
Event | EQ | GET |
To create a script containing the MQ_PUT issued by PDA016 to retrieve credit authorization information from PDA018, apply the following filters:
Field Name | RO | Filtering Criteria |
---|---|---|
Queue manager | EQ | * |
Object/Queue name | EQ | PDAPROD.H01AC013.CREDIT.AUTH.RESP.QUEUE. |
Event | EQ | GET |
Log editing requirements
Simultaneous playback of multiple scripts or the same script multiple times is achieved by placing the appropriate SCRIPT statements under separate MQGROUP statements. The log file generated during script creation always places the SCRIPT statements in a single group. Use a standard file editing tool to create a copy of the first log file. Give it a unique name. Then copy the MQGROUP and SCRIPT statements from the second log files and paste them into the new log file. Additionally, each MQGROUP statement will have an ID of 1. Give each group a unique ID for reporting purposes. See the following samples to see how this is done.
- LOGMG001 contains the MQGROUP and SCRIPT statements for SCRMG001.
- LOGMG002 contains the MQGROUP and SCRIPT statements for SCRMG002.
- LOGMG003 contains the MQGROUP and SCRIPT statements for SCRMG003.
- LOGMG000 contains the MQGROUP and SCRIPT statements from the previous three logs.