|
Synopsis
In an application monitoring context the requirement was to monitor
operation of a complex Java applet-based user interface.
After analysis of the application we created test scripts that
test the multi-window applet-based system that included multiple automated
synchronization and validation steps.
Background
Many users employ a rich-client approach, using, in this case,
sophisticated Java applets to capture user actions and to interact
with the web server.
The customer wished to provide continuous monitoring of the
application, with results fed into a Nagios-based reporting and
control environment.
Besides requiring desktop access, the monitoring activity needed to involve logins, submission of synthetic data, and automated verification of results after data was processed by various server-side applications.
eValid Application Description
The key requirement imposed on eValid was to be able to reliably
test the Java applet without losing synchronization during playback
that might result from various slowdowns in server-side processing.
The script used had to be nearly completely in Application Mode -- the only method available to test a Java applet -- and also needed to synchronize on the various images and response symbols and states that appear on the applet-based display. eValid's Validate and Synchronize on Screen Rectangle feature was used both to achieve the required synchronization but also to validate correct [expected] content in the applet displays.
Because response time was the driving factor for success -- tests had to be completed with in pre-determined maximum interval, we had to take special care to make sure that the eValid playback terminated cleanly when a playback attempt failed because of too-slow server performance.
Results Achieved
After a short period of familiarization with the multiple-applet
architecture of the application, eValid engineers created
a playback script that included automated synchronization at
key points in the script playback (to account for time variation
in the server-side support of the Java applets).
We confirmed reliability of the self-synchronizing tests by running them in "production mode" for a lengthy period before turning the script over to the customer for internal monitoring use.