Employing User Profiles for Regression Testing of GUIs
Graphical user interfaces (GUIs) prevail in today's software. Like any other part of an application, a GUI can house faults; hence GUIs need to be tested during and after development and re-tested after modifications. Current regression testing techniques select a subset of a GUI's state space to re-test. A weakness of these techniques is that the regression test suite may not adequately test parts of the state space that users of an application frequently encounter; hence these techniques may miss failures that users may encounter. This talk presents a new technique to capture GUI user profiles with very little overhead, employ the profiles to "populate" a probabilistic state machine model of the GUI, and develop an algorithm to generate test cases from this model. User profiles may be collected from fielded (previous) versions of an application. An empirical study on one large application shows that test cases generated from the new model successfully reveal faults that an event coverage-adequate test suite does not.