## WorkShop Visual Replay Interface Operation

When you select "WorkShop Visual Replay" from the "Tools" menu, a dialog is displayed requesting the name of the application you wish to record or replay.

Enter the name in the text box labelled "Executable". If you are unsure of the application's name, or where to find it on your system, press the button labelled "Executable". This produces a file selection box containing an extra scrolled list.

Each item in the extra scrolled list is a directory from your PATH. Selecting an item from this list displays the contents of that directory in the "Files" list.

Note - The extra scrolled list uses the PATH set up for you when you ran visu and may contain some extra directories required by visu. When you exit visu your PATH is the same as it was before running the application.

When you select an entry from the "Files" list and "OK" the dialog, the entry is placed in the "Executable" field of the Capture/Replay Application Prompt dialog. Enter any flags or arguments for the application in the text box labelled "Arguments" in this dialog. When you press "OK", the application is run with WorkShop Visual Replay.

Two points need to be made here:

1. The WorkShop Visual Replay dialog is part of the application and will be dismissed when you exit from the application.

2. WorkShop Visual Replay only monitors what happens in the application - it does not and cannot affect the operation of the application other than by simulating operations in playback mode.

## What Gets Recorded

WorkShop Visual Replay has been designed as an efficient way of exercising Motif interfaces with the emphasis on portability and clarity of description.

WorkShop Visual Replay focuses on recording navigation between widgets within an application and the user interaction with those widgets. The following information can be recorded and replayed:

- actions on all widgets

- displaying/closing sub-dialogs.

- use of keyboard accelerators, modifiers.

- all keyboard input (text, arrow keys, delete etc.).

- all mouse button actions - including which mouse button has been pressed.

WorkShop Visual Replay has not been designed as a general-purpose X testing engine and, consequently, there are some aspects of the use of an application which WorkShop Visual Replay does not record. However, facilities are given for extending the WorkShop Visual Replay widget set and adding your own WorkShop Visual Replay commands.

## The WorkShop Visual Replay Interface

The WorkShop Visual Replay dialog appears to the side of your application. A copyright message is also shown on standard error when WorkShop Visual Replay starts up.

If the copyright message does not appear, your application has probably not been dynamically linked with the Xt library.

This dialog has two pages - one for WorkShop Visual Replay (Replay) and one for WorkShop Visual Capture (Capture). You can change between pages by selecting from the option menu labelled "Page".

### Functions and Operations

Once the WorkShop Visual Replay dialog is displayed, you can begin to record/replay scripts straight away. All record/replay actions take place using the WorkShop Visual Replay button panel.

The buttons are described below:

Record - records user actions in the application from the current position in the selected script. If record is pressed after stopping a script, it will overwrite the script from that point on. Pressing record at the end of a script will append to it.

Insert - records user actions in the application at the point where the script was stopped. Subsequent actions in the script are preserved.

Rewind - rewinds the selected script to the beginning.

To replay the script exactly, you may have to reset the application to the state from which the recording was made.

Stop - stops the playback of a script.

Play - plays the selected script from the current position in the script until either the script is stopped or reaches its end.

Single step - plays the next command in a script.

Pause - pauses a record or playback. Press the button again to continue.

Only valid buttons can be selected; all other buttons are grayed out.

Before you have created any scripts, the only button you can press is "Record". This creates an "unnamed" script. Once you have created a script, you can "Rewind", "Play" and "Single step" it.

The "Insert" button becomes active when the script is stopped or paused.

### Creating and Naming Scripts

Press the "New Script" button to create an empty script. To name or rename a script, do the following: 1. Click on the associated icon in the WorkShop Visual Replay dialog 2. Enter the name in the New Script text field and press Return

If you enter the same name as that of an existing script, a number is appended to the newly named script to differentiate between it and the original.

Note - If you have no scripts in the WorkShop Visual Replay dialog, pressing "Record" will create a new "unnamed" script automatically.

### Selection and Status Indicators

The currently selected script is highlighted in the WorkShop Visual Replay dialog.

The WorkShop Visual Replay status indicator shows you whether you are recording or replaying and where in the script you are. If the status indicator is red, it indicates that you are recording. Otherwise you are replaying.

The last button you selected has a red line above it in the button panel.

### Monitoring

The "Monitor" button displays a log of the actions you are taking while recording and replaying. Comments indicating the start and end of a record or replay session are inserted automatically by WorkShop Visual Replay.

### Inserting Extra Commands

As well as actions, you can also add non-application commands and comments to a script.

This can be done by editing the script by hand or via the WorkShop Visual Replay interface. This section describes how to edit the script from the interface.

First stop the script at the point where the additional commands are to be placed. To place extra commands at the start of the script, you must first rewind it. To place commands at another point in the script, single-step to that point.

Next press the button labelled "Extra Commands". This displays a text edit window into which the extra commands or comments can be entered.

If the "Enter as comment" toggle is set, the contents of the dialog are treated as comments. Each line is prepended with a `#' character in the script.

The "Run" button executes the commands in the dialog independently of the recorded script. Use the Monitor window to see the commands being executed. Once you are satisfied with the commands, press the "Add" button to store them in the script.

Press "Clear" before entering additional commands or comments. This removes the information from the Extra Commands dialog - it has no effect on the contents of the script.

### Changing Replay Speed

The fast/slow slider on the WorkShop Visual Replay dialog allows you to change the speed at which the selected script is replayed. By default, the script is played at the maximum speed.

### Saving and Accessing Scripts

By default, the scripts you create in the WorkShop Visual Replay dialog are stored in a temporary unnamed directory.

WARNING - The temporary directory (and its contents) is removed automatically when you exit the application. If you want to preserve your work, you should be working in a named directory (see below).

Use the The "Save As" option from the WorkShop Visual Replay Directory menu to save the current directory under a new name.

Use the "Open" option from the Directory menu to access scripts from another directory. The "Save As" option can also be used to rename the currently opened directory.

Using the operations in the "Edit" menu, scripts can be cut or copied from one directory and pasted into another. The "Clear" command deletes the selected script.

By convention, record scripts are given the filename suffix ".xds" in the file system. Note however that this suffix is not used to label the scripts in the WorkShop Visual Replay dialog.

See also:

- Inserting in a WorkShop Visual Replay Script
- WorkShop Visual Replay Command Line Operation