Using custom JCL for replay
This sample shows JCL for executing the replay and starting the runner. If you want to use your own JCL for the replay job, you can use this sample as a model.
// EXEC PGM=BZUPLAY,PARM='option=value,option=value'
//STEPLIB DD DISP=SHR,DSN=#hlq.SBZULOAD
// DD DISP=SHR,DSN=#hlq.SBZULMOD (optional, used with batch/Db2 replay only)
// DD DISP=SHR,DSN=MY.CICS.LOADLIB
//BZUPLAY DD DISP=SHR,DSN=MY.PLAYBACK
//SYSOUT DD SYSOUT=* (this keeps LE output in one spool file)
//BZUMSG DD SYSOUT=* (optional, can be a VB output data set)
//BZUCFG DD DISP=SHR,DSN=#hlq.SBZUSAMP(BZUSCFG) (optional)
//BZUCBK DD DISP=SHR,DSN=MY.TESTCASE.LOADLIB (optional, location of data set load libraries containing the test case load modules)
The following parameters can be specified on the PARM argument of the JCL execute statement.
| Parameter | Used By | Description |
| CMA | BZUMCP | A value of YES for this parameter causes the Associated Test Case Generation program to specifically create the exit point for the CICS_CMA exit. This parameter can be combined with parameters CWA, PLT, TUA and TWA if desired. |
| CWA | BZUMCP | A value of YES for this parameter causes the Associated Test Case Generation program to specifically create the exit point for the CICS_CWA exit. This parameter can be combined with parameters CMA, PLT, TUA and TWA if desired. |
| CWASIZE | Replay | This parameter allows a user to alter the default size (512) of the CWA to be created. If this parameter is not provided, then the size of the CWA in the recording is used. |
| ELAPSED | Replay | A value of YES for this parameter caused elapsed time tracing between subsystem calls to be produced in the output during replay. This should be used along with the TRACE=YES option. This elapsed time tracing option is useful for identifying performance problems in user applications. |
| ID | BZUECP | This parameter is used by the Extraction Control Utility exclusively and allows the user to define a list of one or more search criteria to be used for record selection when creating a subset playback file. Possible values are a 1 to 4-character transaction name, a 1 to 4-character terminal identifier or a 5-digit task number (with leading zeros if necessary). If multiple values are wanted, then they are separated by commas and enclosed by parentheses. |
| INIT | Replay | This parameter sets a hex value (2-character code) to be used for any uninitialized CICS application GETMAINs. This is useful in problem determination as uninitialized memory pieces can be identified more easily. The default is 00, however for debug purposes a value of EE is suggested. |
| LANG | All | This parameter sets a 2-character code to be used to load the correct language module for the replay messages. Currently EN (for English) is the only supported value, but more languages are being considered for the future. The default is EN. |
| LIST | BZUDCP | This parameter will instruct the Playback Dump Utility to dump all data for the record and its arguments instead of limiting the output to the first 60 characters. |
| MODE | Replay | Normally, the recorded playback file has recorded the environment that was used to collect the data. However, in the case of batch, it might be unknown. In that case, a value can be specified to tell the runner what environment to set up. Values can be BTCH (standard batch), CICS, DLIP (IMS/DB), or DB2P (batch with Db2). It is not usual to have to set this value. |
| NAME | Replay | Some user applications inspect the operating system JSCB control block for the program name that is currently running, usually to see if they are running under IMS. During replay, the name in this JSCB field will be BZUPLAY. This can be dynamically changed to any desired value by using the NAME= parameter. |
| PCBS | Replay | For IMS, the runner will create pseudo-PCBs that are used during replay. The recorded data does not know how many PCBs were in the original PSB. Because of this, the runner automatically creates 100 PCBs for use during replay. If the user needs more, then this parameter can be specified with a larger, more appropriate value. The runner will allocate 348 bytes per PCB that is created and defining many PCBs will cause a large amount of memory to be acquired. |
| PLT | BZUMCP | A value of YES for this parameter causes the Associated Test Case Generation program to specifically create the exit point for the CICS_PLT exit. This parameter can be combined with parameters CMA, CWA, TUA and TWA if desired. |
| PROGRAM | Replay | Normally, the recorded playback file contains the name of the user application that is to execute during replay. It is possible that the recording will not know the name of the program, if for example it was not an LE program. If the program name is unknown, a user may specify the name of the program to invoke first by using this parameter. |
| REPLACE | BZUECP | This parameter is used by the Extraction Control Utility exclusively and allows the user to indicate to the utility that the selected transactions are to be replaced by the contents of the BZUIN playback file. The value of N (the default) indicates that the selected transactions are to be extracted and written to the BZUOUT playback file. The value of Y indicates that the selected transactions are to be excluded and that all other records are to be copied to the BZUOUT playback file with the contents of the BZUIN playback file is to be inserted at the location of the first matched (excluded) record. By using this parameter, a user can create new playback files from existing ones that either include or exclude identified transactions and optionally insert other playback records. |
| REPLAY | Replay |
There are 2 replay modes that can be used. The default mode is S (sequential), which means that the recorded data is returned in the same order as was originally recorded. Record skipped is still allowed if the user program was altered to remove some of the calls. An alternate mode is D (dynamic) which means that during replay processing, the recorded data is logically matched to find the proper recorded data to return for the call. This is done based on argument matching and positioning within the file. The benefit of using dynamic mode, is that it allows a user to alter the order of CICS, IMS, Db2 and IBM MQ calls within the user program, without having to re-record the playback data. Simple changes to user program code will still process. Calls can even be skipped but if new calls are introduced that have no recorded data and no exit point, then the process is unable to proceed. The runner cannot manufacture data. It is important to understand that the dynamic mode has a default tolerance level of 0, meaning that there must be an exact match for the recorded record to be returned. Sequential mode is more tolerant but could produce more warnings. A user may alter the tolerance level by using the TOLERANCE parameter, described below. |
| REPORT | Replay | This parameter is used exclusively with test case invocation. A value of XML for this parameter causes XML-style result information to be written to the BZURPT DD statement. If no BZURPT DD statement is defined in the JCL, then output will be written to a dynamically allocated output spool file. The DCB information for this file is VB, with any LRECL of at least 120. |
| RUN |
BZUDCP BZUECP BZUMCP |
This sets the name of the runner program to use. The default is BZURUN, which is used for replaying recorded data and programs. Other utility programs that come with IBM Wazi Virtual Test Platform are started by using an alternate value for RUN, such as BZUDCP, BZUECP or BZUMCP. |
| STOP | Replay | This sets the error level that will force termination of the current replay. If the replay is part of a TESTCASE that has multiple tests, then this will only stop the current test in progress and allow the next test to start. The possible values are W (for warning level), E (for error level) and S (for severe level), which refer to the level of any messages that are produced. The default value of S, which means that a severe error message will cause termination of the process. |
| TCTUASIZE | Replay | This parameter allows a user to alter the default size (0) of the TCTUA to be created. If this parameter is not provided, then the size of the TCTUA in the recording is used. |
| TOLERANCE | Replay | This allows a user to define the maximum number of bytes (default is 0) that can mismatch in the arguments, before it is rejected. Any mismatch count above the specified value, will result in the recorded record from being rejected. Care should be given in setting this value as it directly affects the selection of the record to use. |
| TRACE | Replay | Specify a value of N (the default) to prevent tracing messages from being written. Specify a value of Y to cause tracing messages to be written. Specify a value of I to get internal tracing messages, in addition to standard tracing messages to be written. Typically, a user would use the default or specify Y. Trace messages are internally collected during execution, whether tracing has been set on or off. In the event of an error or abend that causes premature termination, the most recent 1000 trace messages are written, to assist in problem determination. |
| TUA | BZUMCP | A value of YES for this parameter causes the Associated Test Case Generation program to specifically create the exit point for the CICS_TUA exit. This parameter can be combined with parameters CMA, CWA, PLT and TWA if desired. |
| TWA | BZUMCP | A value of YES for this parameter causes the Associated Test Case Generation program to specifically create the exit point for the CICS_TWA exit. This parameter can be combined with parameters CMA, CWA, PLT and TUA if desired. |
| UTF | Replay | This option is used with the REPORT option and allows a user to specify whether the generated XML output is to be written as EBCDIC (value N), UTF-8 (value Y) or defaulted to the same code set (UTF-8 or EBCDIC) defined by the file code set of BZUCFG. |