Having problems with your account or logging in?
A lot of changes are happening in the community right now. Some may affect you. READ MORE HERE

Verify the correct screen content is displayed during Citrix replay.

Verify the correct screen content is displayed during Citrix replay.

Screen synchronization offers a means of verifying replayed Citrix content. It differs from standard script verifications because it allows verification of window and screen region appearances (as opposed to input values) and they are inserted during script recording, not during subsequent script customization.

Procedure to generate screen region synchronization during recording:

  1. Record a Citrix session as described in the Citrix Tutorial



  2. During recording, press the Select Region button on the Silk Performer Citrix Recorder.



  3. Click your mouse onscreen and drag it to select a screen region for which you wish to generate synchronization. Note: Because differences as small as a single pixel can cause the synchronization processes to fail, it's recommended that you select the minimum screen area required for text verifications. Otherwise, unanticipated screen differences (e.g., disabled toolbars) may affect verification results.


  4. The Selection dialog appears. Specify how you wish to have screen region coordinates scripted (Script absolute coordinates, Script coordinates relative to window, No coordinates, or Use Full Window). When windows are maximized there is effectively no difference between absolute and relative coordinates. When windows are not maximized, relative coordinates are measured from the top-left corner of the Citrix Recorder window.


  5. Specify the Content Matching Type that the Citrix player should wait for during replay (content match, content mismatch, or content change).


  6. Click OK to add the synchronization to your Citrix test script.





Screen synchronization is achieved via CitrixWaitForScreen functions, which are not scripted automatically by the recorder. These functions are inserted via the Screen Region dialog during recording. CitrixWaitForScreen functions compare replay and record bitmaps to determine whether or not they are identical. Hash values, as opposed to actual bitmaps, are used to compare the images. This is to save on resource consumption during replay.

To verify replay screen regions against hash values that are captured at recording it's necessary that the same color depth that is used during recording also be used during replay. Scripts will fail if these specifications are not maintained because changes as small as a single pixel can change hash values and result in replay content
appearing to be different from recorded content.

It's vital that windows that are maximized during recording are maximized during replay. This is because replay cannot change the state of windows (it can only resize and move them). So if a window state changes (e.g., from Maximized to Restored), then it is likely that some user input in the script caused the change (e.g., clicking the Restore button). On replay the user will click at the same position (which is now the Maximize button) and consequently a different operation will be executed-the subsequent CitrixWaitForWindowRestore function will fail.



Some content on Community Tips & Information pages is not officially supported by Micro Focus. Please refer to our Terms of Use for more detail.
Top Contributors
Version history
Revision #:
1 of 1
Last update:
‎2013-02-15 18:47
Updated by:
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.