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

image2021-2-19_11-9-40.png

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

Important

Enter this filtering information on the Header Filter Detail screen (WebSphere MQ - Header Filter Detail Screen) in the Create MQ Script facility. Also, be sure to select the Log Entries field on the WebSphere MQ Create Scripts - Create Options screen (2 of 2) to generate a LOG file that you can compare to the sample LOG files.

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.


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*