Reverse Engineered Formal Models for GUI Testing

This paper describes a process to reverse engineer structural and behaviouralformal models of a GUI application by a dynamic technique, mixingmanual with automatic exploration. The goal is to diminish the effort requiredto construct the model and mapping information needed in a model-based GUItesting process. A skeleton of a state machine model of the GUI, represented ina formal pre/post specification language, is generated automatically by the explorationprocess. Mapping information between the model and the implementationis also generated along the way. The model extracted automatically isthen completed manually in order to get an executable model which can be usedas a test oracle. Abstract test cases, including expected outputs, can be generatedautomatically from the final model and executed over the GUI application,using the mapping information generated during the exploration process.

[1]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[2]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[3]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[4]  Mary Lou Soffa,et al.  Automated test oracles for GUIs , 2000, SIGSOFT '00/FSE-8.

[5]  K. Rustan M. Leino,et al.  The Spec# Programming System: An Overview , 2004, CASSIS.

[6]  Eleni Stroulia,et al.  User Interface Reverse Engineering in Support of Interface Migration to the Web , 2003, Automated Software Engineering.

[7]  Eleni Stroulia,et al.  Reverse engineering legacy interfaces: an interaction-driven approach , 1999, Sixth Working Conference on Reverse Engineering (Cat. No.PR00303).

[8]  Atif M. Memon,et al.  GUI ripping: reverse engineering of graphical user interfaces for testing , 2003, 10th Working Conference on Reverse Engineering, 2003. WCRE 2003. Proceedings..

[9]  M. G. Rekoff,et al.  On reverse engineering , 1985, IEEE Transactions on Systems, Man, and Cybernetics.

[10]  Nikolai Tillmann,et al.  Modeling and Testing Hierarchical GUIs , 2005, Abstract State Machines.

[11]  Margus Veanes,et al.  Model-Based Testing of Object-Oriented Reactive Systems with Spec Explorer , 2008, Formal Methods and Testing.

[12]  Ana Cristina Ramada Paiva Pimenta Automated specification-based testing of graphical user interfaces , 2006 .

[13]  Ajitha Rajan,et al.  Requirements Coverage as an Adequacy Measure for Conformance Testing , 2008, ICFEM.

[14]  Margus Veanes,et al.  Testing Concurrent Object-Oriented Systems with Spec Explorer , 2005, FM.

[15]  Stephen Gilmore,et al.  Mobile Resource Guarantees for Smart Devices , 2004, CASSIS.

[16]  Jean Vanderdonckt,et al.  Flexible reverse engineering of web pages with VAQUISTA , 2001, Proceedings Eighth Working Conference on Reverse Engineering.

[17]  Nikolai Tillmann,et al.  A Model-to-Implementation Mapping Tool for Automated Model-Based GUI Testing , 2005, ICFEM.

[18]  Daniel Sabbah Aspects: from promise to reality , 2004, AOSD '04.