TestBench Capabilities by Module

• Plan_IT can help you to identify the impact of changes to data objects by providing a list of all programs which reference the objects.
• Plan_IT displays the nested call stack for any program, and all calling programs can be viewed.
• Plan_IT can identify modular programs to help you create your test scenarios.
• Plan_IT will search for existing Test Cases for a program, and automatically create new Test Cases if required.
• Plan_IT enables an application model to be created which reflects potential system changes.
• Plan_IT will automatically create Data, Warp or Compare Case descriptions required for a program test.

• Test_IT enables any combination of program calls and commands to be tested by a repeatable method and exercised over a combination of data and job date values.
• Test_IT provides Data Rules which can be set for any file or data area and thus used to define the expected results of the test.
• Test_IT can automatically protect any file that may be updated to ensure that the test can be run repeatedly without requiring the test data to be reset.
• Test_IT will attempt to automatically set the parameter definitions from the program source. If the source is unavailable then the user can define the parameter details.
• Test_IT enables commands used to execute batch programs to be trapped and set up automatically in TestBench so you can repeatedly test a batch program.
• Test_IT will automatically track jobs submitted as part of the test.
• Test_IT scans CL, RPG and ILE RPG source for operations which may invalidate modeling of forward Job Dates. (currently fixed format source only)
• Test_IT automatically increments the Job Date many times within a single test to model the effect of operation at future or historic dates.
• Test_IT holds a Library List and Local Data Area setting to be specified for use when the program is tested. The Library List can be automatically extracted from the current job. The user can optionally request that any attempt to bypass the Library List through the IBM Override Database File command should be intercepted and reported, or dynamically corrected.
• Test_IT defines an error message level to be set which should cause the test to be marked as unsuccessful.
• Test_IT enables any program call to be intercepted and the parameter values viewed, or even replace the normal parameters with user defined values.
• Test_IT monitors data queue traffic going to and from data queues, so this communication process can be monitored.
• Test_IT tracks messages sent to IBM MQ queues and stores these for analysis.
• Test_IT holds and creates extensive documentation for the test. This includes the definition of test sheets where the items to be tested can be recorded. These test sheets can be based upon system level standard test sheets to maximise productivity.
• Test_IT enables a score to be recorded for each test item and the score for the total test will be automatically recorded, while the number of test items that were included in the test will be used to calculate the test coverage.

• WrkTstRun provides a full analysis of the results from a test run. If the test is still active the current status of the test can also be determined.
• WrkTstRun will highlight whether any error conditions were encountered during the test. Such error conditions occur when actual results do not match the expected results or when an error message was logged that exceeded the level specified for the test. ‘Drill down’ capabilities are provided so that a full analysis of any error condition can be performed.
• WrkTstRun provides facilities so that the details of every file update, data area update, parameter value, logged message and screen error can be examined in detail.
• WrkTstRun allows notes to be recorded against the test so that a full analysis of the error is available to the developer.
• WrkTstRun provides performance information in terms of the elapsed time and cpu cycles that a test took to execute.

• Report_IT automatically produces a test document for a specified test or for all tests in a Project.
• Report_IT combines text that can be recorded for any entity within TestBench with the results of the various test runs to provide a comprehensive document. The optional TestBench text editor is IBM i based so that the information is available to all users. This editor provides excellent basic formatting, layout and editing capabilities.
• Report_IT allows the user to choose what level of information is included so that different documents can be produced for development rework, system acceptance and quality audit.
• Report_IT can generate the document directly to an IBM i spool file or as a PC file suitable for use in any standard PC word processor.

• Extract_IT creates a test database as an intelligent sub-set of a larger database.
• Extract_IT automatically scans files and determines key relationships on which a selection can be based, meaning minimum set up time.
• Extract_IT enables the resulting database model to be printed.
• Extract_IT will automatically create all objects, dependent objects for MQT’s and SQL Views and optionally related logical files, triggers and constraints in the specified target libraries.
• Extract_IT enables records to be selected from a file using standard query arguments or sql syntax.
• Extract_IT additionally allows any selection to be limited to a maximum number of records, or via sampling at the file or field level.
• Extract_IT also allows records to be selected from a file where the keys match records found in another file. Matching keys can be automatically set by user.  Data selections can also be made that are dependent on contents of another file.   This is achieved by creating ‘inner joins’.
• Extract_IT enables further reduction of joined records derived from the based on file by supporting additional selections at any level.
• Extract_IT enables extracted records to be updated and those in the original files to be updated or deleted.
• Extract_IT can operate either interactively or in batch.
• Extract_IT handles multi-member files and enables data to be added to previously extracted files.
• Extract_IT supports ‘transaction-led’ extraction which means that the required master file records to support the selected transactions are automatically derived.
• Extract_IT stores the results of each execution for future analysis.

• Warp_IT will take the dates in your files forward into the future or back into the past in a consistent manner.
• Warp_IT takes account of two and four digit years, century indicators, months, days, periods, weeks, Julian dates either alone or in combination.
• Warp_IT handles IBM ‘Date’ data types.
• Warp_IT enables you to define the Warp factors to apply for each date type and control the results you want.
• Warp_IT includes data sampling to check the contents of date fields you are defining to be warped.
• Warp_IT has a date calculator to model the effects of the Warp Factors on an example date.
• Warp_IT can scramble fields such as name and address to produce desensitised data, avoiding confidentiality issues.

• Comp_IT will compare two similar versions of a file and tell you about the differences.
• Comp_IT handles different field lengths, extra fields, missing fields, and inserted/deleted records.
• Comp_IT will compare by Physical File or Logical File key, Relative Record Number or physical sequence in the file.
• Comp_IT will stop comparing after your pre-determined maximum errors has been reached, just in case things are very different.
• Comp_IT enables you to limit the compare to selected fields and selected records.
• Comp_IT only reports the differences and formats the data for easy reading, on a report or on screen.

• Adhoc_IT is aimed at developers to provide a simple but straightforward program level test area.
• Adhoc_IT will attempt to automatically extract the definition of program parameters from the program source. If the source is unavailable then the user can define the parameter details.
• Adhoc_IT allows a Library List and Local Data Area setting to be specifically associated with the program under test to ensure the test environment is always consistent.
• Adhoc_IT executes an extensive pre-check routine the first time a program is run so that the developer is aware of missing objects and data objects that may be affected by the test.
• Adhoc_IT highlights any changes to parameter values during the course of a test.
• Adhoc_IT provides a vastly enhanced Job Log Display where the messages related to the program under test are highlighted. Powerful sub-setting and sequencing capabilities are also provided.
• Adhoc_IT always remembers the details of all programs tested by a developer.

Interactive Testing: TestDrive, Native Record & Playback
• TestDrive/Native R&P creates scripts by recording keystrokes and screen images. You do not need to learn a scripting language.
• TestDrive/Native R&P replays recorded scripts and at the same time, if required, uses the TestBench test engine to re-set data and analyse file effects.
• TestDrive/Native R&P compares expected screen results to those actually received. Differences are instantly visible at the script, screen and field levels. Expected and Actual screen images show the differences in reverse image.
• TestDrive displays scripts in a clear GUI interface, and individual field values are easily viewed and maintained.
• Native R&P enables scripts to be recorded without using a PC, that is to say a terminal can be utilised.
• Native R&P can replay a Script as a Batch process so interactive tests can run unattended.
• TestDrive/Native R&P can perform multiple executions of a script and uses substitution variables to modify the data.
• Native R&P scripts can be linked together into Action Maps so that many tests can be performed in succession.
• TestDrive/Native R&P excludes specified dates/times and phrases from the comparison, for example for system date and time.
• TestDrive/Native R&P checks that the start screen image matches what is expected, and gives the option to abort the run if the starting place is incorrect.
• TestDrive/Native R&P will halt a script after a maximum number of discrepancies have been reached.
• TestDrive/Native R&P stores results along with TestBench results at the Test Sub Run level.
• TestDrive/Native R&P is fully integrated with TestBench testing functions. Scripts can be stored against a Project and Test Case, and expected and actual results can be viewed. Warnings are automatically created if expected results are not achieved.

Action Maps
• Action Maps enable the various tasks associated with a particular testing project to be organised into a single unit of work.
• Action Maps enable any combination of Plan, Data, Warp, Test or Comp Cases and Native R&P Scripts to be run automatically as a single process.
• Action Maps also enable commands to be added as entries to increase the level of automation that can be built into the process.
• Action Maps store the results for each execution for future analysis.
• Action Maps contain a results display where the status and duration of each individual task is shown and for Test Cases a link into Test Case Results is provided.
• Action Maps can be scheduled using the command Action_IT to run overnight or at the weekend.