Question & Answer
How do you make IBM Rational Performance Tester Citrix tests more robust and scalable?
Citrix uses a proprietary protocol called the Independent Computing Architecture (ICA) Protocol. All application logic executes on the server and only screen updates (along with optional sound), mouse movements and keystrokes are transmitted through the ICA session to the server and client device.
The only events the ICA protocol gives Rational Performance Tester to use for synchronization are Window Create, Activate, and Destroy events. If an action such as clicking a link in a browser causes new data to be loaded into an existing window (such as a web new page), Rational Performance Tester has no way to know when that page is ready for the next click. It is therefore imperative that all such actions be preceded by an image synchronization event.
Image synchronization events can be a bitmap hash comparison or textual utilizing the OCR technology. Image synchronizations should be inserted before the next action to ensure the application is ready.
Use very deliberate keystrokes and ensure you release one key before pressing the next. This enables Rational Performance Tester to convert the key up and key down events into Text commands.
Make Create events for all non-required Windows (such as command prompt windows and splash screens) Optional. During multi-user playback, Rational Performance Tester may not see them. Any windows that have interactions (clicks) on them should not be Optional.
Activate events should almost always be set to Optional. Depending on the sequence of events, the server may or may not send the Activate event immediately after creation of the window. The sequence may vary based on server load.
Basically, all Mouse Move operations are optional. The Click events contain the X,Y coordinates so the test will be functionally equivalent even if you delete all mouse moves. Mouse Move events are really only necessary if you are concerned that Moves will impact the performance of the Citrix Presentation Server.
Image Synchronizations should not be put on window banners. Window focus could determine if the synchronization passes or fails. The timing of the Windows focus may vary based on server load.
The images captured by synchronization points during playback are often slightly different than they were for recording. You often need to run test once, then Add images to synchronization points from the Event History.
16 June 2018