1. A computer-aided system for testing operation of an application program having a user interface, the system comprising: means for storing a library of generic element models, each said generic element model encapsulating functionality and behavior for a single user interface element; means for creating a test model of said application program by combining selected ones of said generic user interface elements into at least one application-specific testing model, each said at least one application-specific testing model representing a high-level model for a specific user interface component for the application program; message engine means for monitoring events during operation of the application program; and script engine means for specifying actions of said test model to be undertaken upon occurrence of selected ones of the events.