Screen Synchronization and Verification

Silk Performer supports bitmap and window verification for applications that are hosted by Citrix XenApp servers. Screen synchronization offers a means of verifying replayed Citrix content. Screen synchronizations differ from standard script verifications in that they allow for verification of window and screen region appearances, not input values. Also, they are inserted during script recording, not during subsequent script customization. Screen synchronizations are particularly useful for synchronizing subsequent user input that is displayed in browsers, or similar interfaces (for example, Citrix application windows), because such applications do not support automatic synchronization through window events such as user input and text display.

Note: Response data verification is not supported for Citrix testing.

Silk Performer relies on hash values to verify replayed bitmaps against recorded bitmaps. Hash values are computer-readable values that reflect bitmap specifications such as size, position, resolution, and color depth.

Note: To verify replay screen regions against hash values that are captured at recording it is necessary that the same color depth that is used during recording be used during replay. Scripts fail when 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.
Note: Windows maximized during recording must also be maximized during replay. This is because replay cannot change the state of windows (it can only resize and move windows). So if a window state changes (for example, from Maximized to Restored), then it is likely that some user input in the script caused the change (for example the Restore button may have been clicked). On replay the user will click at the same screen position (now the Maximize button) and consequently a different operation will be executed and the subsequent CitrixWaitForWindowRestore function will fail.