Capture & Replay - GS21 Terminals

Capture & Replay with GS21 Terminals 

No need to connect to the mainframe! This fully client-side application operates entirely within your browser. All user interactions and terminal session processing remain client-side, with no server connections or data storage required. This ensures complete privacy and data protection while enabling comprehensive terminal testing and validation. 

GS21 Terminals contains 2 types of terminal emulator processing:

  • EXTES Terminal: A Windows-based terminal emulator  developed by UNIRITA (third-party vendor). It is specifically designed for GS21 mainframe connectivity and uses proprietary TCP/IP protocols for communication. EXTES requires Wireshark TCP/IP dumps converted to JSON format for processing and utilizes JEF Private Use (JEF PU) character encoding.

  • TN6680 (WSMGR) Terminal: Fujitsu's WorkStation Manager for mainframe connections. It is highly compatible with genuine Fujitsu "WSMGR" product and supports both "TN6680 (Telnet)" and "FNA on TCP" connections. WSMGR uses CSV format logs with standard JEF encoding, with core business functions available on Windows computers.

Terminal Session Preview: 

  •  for EXTES: converted Wireshark TCP/IP dumps,

  • for WSMGR: CSV logs, following a specific format. 

These logs enable capture and replay of mainframe interactions for analysis and testing purposes.

Capture

The Terminals offers two key functionalities for GS21 mainframes:

  • Recording: It allows users to capture test scenarios generating video recordings and test scripts.
  • Visualization: It provides the ability to visualize and navigate through individual test cases on a replicated terminal interface without requiring a direct connection to the mainframe. The user can take a screenshot of the screen terminal and copy it to the clipboard.

These features enable users to create comprehensive test assets through recording, review and analyze test scenarios offline, and validate terminal interactions without mainframe access. 
 

image.png

The captures should be made with up-to-date versions of Chrome, Edge, or Firefox. 

When using Firefox, always choose the MP4 option when recording with Firefox to ensure a complete and properly formatted video capture.

Users choose the files' name for download during the export configuration before exporting the video, as well as the server name and the transaction name. During recording, users can cancel the recording.


 

image.png

Streamlined Workflow for Efficient Testing 

Maximize your productivity with our advanced file handling capabilities. Upload multiple trace files simultaneously, allowing you to process entire test suites in one go. This feature significantly reduces setup time and streamlines your testing workflow.

When using multiple file upload options, video recordings for each test case will not be included in the exported artifacts, unlike a single file upload where a video recording is optional.  

For those looking to integrate with CI/CD pipelines, we've got you covered. Export Playwright scripts with ease, enabling seamless automation of your terminal testing processes. These scripts capture all the nuances of your terminal interactions without the need for video output, ensuring lean and efficient test assets.

By combining multi-file uploads and Playwright script exports, you can rapidly create comprehensive test suites that validate your modernized applications against legacy terminal behaviors. This powerful combination accelerates your testing cycles and enhances the overall quality of your modernization efforts.

Unlock the full potential of your testing strategy with these time-saving features, designed to meet the demands of modern, fast-paced development environments.

image.png

Replay

The generated Playwright scripts are designed to be integrated into the modernized application's CI/CD pipeline. This integration enables automated testing that validates the modernized system to maintain the same functionality as the original terminal-based workflows.

For a good visual experience, we strongly recommend using the same browser for recording and playing the videos. Other players may not play the video properly.

Result files

We provide these files in the export:

  • playwright-utils.ts : Utility functions for Playwright tests
  • <session-name>.mp4 : Video recording of the session
  • <session-name>.spec.ts : Main Playwright test script
  • and individual test case data (test-0.json, test-1.json, ...) 

Video Recording

The video file (mp4 or webm) captures the entire terminal session, providing a visual reference for test validation and documentation purposes. This recording can be played back using any standard video player.

Playwright Script

The generated .spec.ts file contains the automated test script that can be executed using Playwright. This script integrates the individual JSON test cases while implementing the terminal interaction logic, managing screen validation and user inputs. It also maintains the terminal state and navigation flows throughout the test execution process.

Make sure to also include the playwright.utils file in order to smoothly execute your test cases. 

JSON Test Cases

Each test-{n}.json file contains the core test elements: screen state information, user input data, expected terminal responses, and timing and sequence information necessary to accurately replay and validate terminal interactions.
 

Global capture workflow

Setup

EXTES 

Capture terminal session (TCP/IP Dump) using Wireshark. Then, convert it to JSON and upload it to GS21 Terminals' tool, using the following command: 

tshark -r trace.pcapng -T json > trace.json

It is important not to modify the converted JSON file, to ensure a correct capture of the uploaded test cases. 

WSMGR 

Capture the terminal session and upload it to the GS21 Terminals platform in CSV format.

Ensure that the CSV file contains the following fields as columns, and that the order of the columns remains consistent.

Field

Description

Format/Values

No. Sequential row numberInteger
TimeTimestampMM:SS.S
ClientIPClient IP addressIPv4 format
WSMGR for web server IPServer IP addressIPv4 format 
Host/IPHost informationString/IPv4 
UserUser identifier String 
Icon Icon/connection status String 
Contents Detailed transaction content("text", row, column, <parameters>)
ScreenFormatIDScreen format identifier String 
InformationTypeType of Information"Data"/"Command"
AdditionalInformation Operation type "Recv"/"Send"
Command Screen Command "Erase/Write", "Write" (can also be empty)
 

The parameters required for “Contents” column are the following: 

  • len=N                                Length of text element
  • attr=ATTRIBUTES            Display attributes 
  • color=COLOR                  Text color
  • name="FIELD_NAME"    Field identifier

Attribute list: 

AttributeDescription
NUMNumeric field
OVLOverlay
UDLUnderline
VTLVertical
UNPUnprotected (input field)
HDNHidden
HLTHighlight
 
Sample Record
1,40:49.0,10.232.162.231,10.232.162.228,10.85.19.106,USER02,connection_icon,("TITLE", 1, 1, len=5, attr=NUM|OVL, color=GRN),IG0G0020,Data,Recv,Erase/Write) 
 
Common Field Patterns

Headers

("TITLE", 1, 1, attr=NUM|OVL|UDL|VTL, color=GRN)

Input Fields

("Input", 3, 1, len=5, attr=UNP|UDL, color=WHT, name="input_field")

Display Fields

("Data", 5, 1, len=4, attr=NUM, color=GRN)
 
General Information
  • When importing the JSON file into Capture & Replay: Select the correct GS21 server IP address from the drop down menu.

     The IP address must match the destination server in trace files.

  • AWS Blu Insights Terminals does not store data during the capturing process. 
  • Create or identify appropriate test credentials with necessary authorization levels for different test scenarios. 

Calibration

  1. Begin by recording a pilot test scenario on the GS21 terminal using Wireshark
  2. Import the resulting JSON/CSV trace file into AWS Blu Insights GS21 Terminals to validate that all screens, user interactions, and field positions are accurately captured.
  3. Review the generated Playwright test script, video recording, and Json test case files for completeness and accuracy.
  4. Execute the generated Playwright script to verify at least one complete test scenario, confirming that all interactions are correctly replayed. This validation step is critical before proceeding to full-scale recording.

Recording

After successful calibration, you can proceed with full-scale recording by sharing the capture process with other testers. The next step involves collecting traces for the required test scenarios. Finally, maintain consistent naming conventions for traces and document any specific configurations or special cases that arise during the recording process.
The tool will process each trace to generate reusable test assets for your modernization project.

You may look at the FAQ for more details.