Test Case System Options

This menu holds all of the system values which control the behavior of Test Cases.

General Settings

Use CHGSYSLIBL Some of the functionality within a Test Case requires that objects are placed in a run time library which is then placed at the top of the system portion of the test library list using the command CHGSYSLIBL. If you do not wish to allow the use of this command this option should be set to ‘2’. This means that the associated functionality cannot be used – see later section in Authority to IBM i ( OS/400 ) Commands.

Last Unique Test Run ID
This is incremented automatically by TestBench and should not be changed unless you have started with an empty database and wish to begin with run id 1. Each Test Run within TestBench is assigned a unique reference across all Projects in the range 1 to 999,999,999. This is used in the name of the temporary run time library that is created for each test run. In the System Values you can assign any number you choose as the next Run ID although it cannot be lower than any Test Run that currently exists within the system.

Expand command refs This option determines how data protection will be accomplished for Test Case Processes that are initiated with a command. If this option is set to ‘1’ and data protection is being used by the Test Case, the command processing program will be used to determine the objects that require protection. If this option is set to ‘2’ then any objects requiring protection must be defined in Manual References.

*DYNAMIC extension warning
When dynamic data protection is used and a new program is executed during the test, any new objects used by that program are copied into the TestBench run time library. A message is displayed on screen to explain the time delay while this occurs. In some circumstances this can overwrite any existing screen messages and if scripting is being used can cause screen differences to be reported. This option can be set to ‘2’ to prevent these status messages from appearing.

Result compare screen margin
When doing test results comparisons, the screen response times will only be highlighted as being different if the difference falls within this percentage margin.

Native Record and Playback
The options are used to define the settings applicable while using Native Record and Playback (refer to the chapter on Testing for more information). Some of these values may also be overridden at the individual script level.

Title Search Line/Posn The position on the screen where the screen title can be found when recording ‘Native’ scripts. Screens in the script will automatically be saved with this name.

Screen Delay Used to slow down the ‘Native’ playback of a script. Enter a value in half second increments to indicate the length of the pause between the keystrokes being played into a screen and the next screen appearing.

Keystroke Delay The length of the pause between a screen appearing and the keystrokes being played into it.

Leading Blank Suppression
Set to ’1’ to record the field position for a constant where the first non-blank character is, rather than the actual start of the field. You will need to use this if you have screens where an input field and a constant field start in the same position.

Enable TESTBENCH User Profile
When a Script is recorded or replayed with ‘Native’ R&P, another session is automatically created by TestBench. The User ID and Password with which the user is currently signed on will be used by default. However, it is possible to use a TestBench User Profile for the new session in situations where the current profile will not give the desired results. Details of this User Profile are not published here for security reasons – please contact Original Software for more information.

Play/Record message While Native Record and Playback is recording or playing back, a short message block is displayed on the screen to remind the user of the mode. The position of this message can be altered with these options so that it can be made to appear on an area of the screen not used for data entry.
There are two values depending on the display size being used in the terminal (either 24 lines by 80 columns or 27 lines by 132 columns). The message may not start within 12 characters of the end of the line width, hence the maximum values of 68 and 120.

Native Integrated Startup
If the title of the sign on screen is different to the IBM standard, put the title of your sign on screen here. The search line and position fields should only be used if the title of your sign on screen does not appear in the centre of line 1. This is used during Native Record and Play back so that TestBench knows that it is on the sign on screen and can end the test when the script has finished playing back.

Enter the titles of the screens that follow the sign on screen and how to progress, so that when Native R&P has signed on it can get to the first screen in the application.

F7 – Virtual Devices Specify a list of valid device names that should be used when recording or playing back natively. If a device is already in use, a message is added to the joblog and a connection attempted using the next device in the list. If this screen is left blank the system will assign the device names.

Alternative Source Locations
This allows alternative source locations to be defined for objects found in a specified library.

Option Option 1 means that the Alternative Source File will always be used, whereas option 2 specifies that it should only be used if the source file obtained from the Object Description is not found.

This better supports environments where objects are duplicated into a library rather than being re-compiled.

Program Interceptions
This option allows the maximum size of your interception programs to be set in terms of number of parameters and parameter length, and applies to both program interception and dynamic data protection. Setting this option to a lower value can sometimes improve performance, especially when dynamic data protection is being used. If however this information is unknown, then this value should be left at the maximum ‘255×32000’.

If a program interception or *DYNAMIC program is called which is bigger than the specified size then a warning will be generated in Test Run results.

Additionally, if you are using Log Call interception and you do not wish joblog messages to be generated each time an intercepted program is called, set the ‘Include’ option to ‘2’.

Test Sheets
System Test Sheets provide a means of storing standard lists of items to be tested in common situations, which can then be used and adapted for individual Test Cases. The Test Sheet is comprised of a list of Test Items which are effectively tasks or check points in a test plan. They cover aspects of a system that TestBench will effectively test as well as subjects which will be examined or verified by other means. However, if all the items are included in TestBench, it makes it possible to use TestBench to keep track of the progress and status of each test.

System Test Sheets can be set up to cover usual test activities so that these do not have to be re-entered with each Test Case, and can provide a comprehensive standard on which tests are to be based.

When changing or adding a Test Case, function key F15 provides access to the Test Items for the Test Case, and from there, F4 can be used to retrieve the System Test Sheets and populate the Test Items with the contents of one or more Test Sheets. Thereafter, items can be added, removed or amended to create the best list of items for that particular Test Case.

Test Items The text of the Test Item which describes the aspect of the program that is to be tested or checked. Once copied into Test Items for a Test Case, these can be accessed during or after a Test Run and scored to record the progress and success of the test.

Sequence Use the numbering to alter the order of items or to insert new lines.

Result Compare File Definitions This area is where the user can define files and the associated library and optionally specific fields to exclude from the Result Compare.
From the Result Compare File Definitions screen, there the following options:
Option 2 Define to change the existing entries.
Option 4 Delete to remove existing entries.
F6 Add function key to add file definition entries.
The Status field will either display Excluded if a file is excluded using option 1 (below), or the status will state Detailed if option 2 (below) Detailed Exclusion is defined.

Once the user takes function key F6 Add or option 2 to Define, the Exclusions and Compare Key Definition screen will appear.
Screen id = TRC-GLOBAL
File and Library fields are available.
Exclude field allows:
Option 1 File Exclusion Exclude a file.
Option 2 Detailed Exclusion Exclude specific fields.
Additional options of 1 Include and 2 Exclude are available for fields.
Key Seq is the key sequence that can be specified by entering in sequence numbers.

Result Compare Library Mappings
Libraries can be defined to dictate which libraries of files get compared to another set of files in another library.

Extended Rollback Command Protection ( Extended Rollback Create Object Commands )
For Test Environments with Extended Rollback Support, and Test Cases with *ENV protection,
TestBench 8.3.0 introduces the following, additional command options:

CPYTOIMPF – Copy to Import File
CPYF CRTFILE(YES) – Copy File with *YES for Create File
CPYTOSTMF – Copy to Stream File
CPY – Copy Object

Historically, Environment protection has only worked within the boundaries of files that are journalled.
These new commands can create new objects (or replace existing ones). New objects have never been
automatically journalled by TestBench, a scan process has always been needed.
Previously, TestBench only provided rollback support for DB2 files, data areas, and data queues.
As of version 8.3.0, this is a first for introducing IFS objects.

For Extended Rollback Command Protection option, the commands options default to 1 None (off).

Option 2 will remove new DB2 files created from CPYF CRTFILE *YES command, or IFS objects created as part of test execution with the commands CPYTOIMPF, CPY, or CPYTOSTMF.
If a DB2 file content is replaced with the CPYTOIMPF command, then the data is rolled back.

Option 3 Start Journal is only applicable for the CPYF CRTFILE(*YES), with this option journaling will be started for the new file(s) created, and Database Effects obtained and stored within Test Case test results.