Abstract
This paper describes a process to reverse engineer structural and behavioural formal models of a GUI application by a dynamic technique, mixing manual with automatic exploration. The goal is to diminish the effort required to construct the model and mapping information needed in a model-based GUI testing process. A skeleton of a state machine model of the GUI, represented in a formal pre/post specification language, is generated automatically by the exploration process. Mapping information between the model and the implementation is also generated along the way. The model extracted automatically is then completed manually in order to get an executable model which can be used as a test oracle. Abstract test cases, including expected outputs, can be generated automatically from the final model and executed over the GUI application, using the mapping information generated during the exploration process.
Work partially supported by FCT (Portugal) and FEDER (European Union) under contract POSC/EIA/56646/2004.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Barnett, M., Leino, K.R.M., Schulte, W.: The Spec# Programming System: An Overview. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) CASSIS 2004. LNCS, vol. 3362. Springer, Heidelberg (2005)
Campbell, C., Grieskamp, W., Nachmanson, L., Schulte, W., Tillmann, N., Veanes, M.: Model-Based Testing of Object-Oriented Reactive Systems with Spec Explorer, Microsoft Research, MSR-TR-2005-59 (May 2005)
Chikofsky, E.J., Cross, J.H.: Reverse Engineering and Design Recovery: A Taxonomy. IEEE Software 7(1), 13–17 (1990)
Kiczales, G., Lamping, J., Menhdhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-Oriented Programming. In: M. A. a. S. M. (eds.) Proceedings of the European Conference on Object-Oriented Programming (1997)
Memon, A., Banerjee, I., Nagarajan, A.: GUI Ripping: Reverse Engineering of Graphical User Interfaces for Testing. In: Proceedings of the WCRE 2003 - The 10th Working Conference on Reverse Engineering, Victoria, British Columbia, Canada, November 13–16 (2003)
Memon, A.M., Pollack, M.E., Soffa, M.L.: Automated Test Oracles for GUIs. In: Proceedings of the FSE (2000)
Nyman, N.: In Defense of Monkey Testing (conferred in May 2006)
Paiva, A.C.R.: Automated Specification-Based Testing of Graphical User Interfaces, Ph.D, Engineering Faculty of Porto University (Ph.D thesis), Department of Electrical and Computer Engineering (2007), www.fe.up.pt/~apaiva/PhD/PhDGUITesting.pdf
Paiva, A.C.R., Faria, J.C.P., Tillmann, N., Vidal, R.F.A.M.: A Model-to-implementation Mapping Tool for Automated Model-based GUI Testing. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785. Springer, Heidelberg (2005)
Paiva, A.C.R., Tillmann, N., Faria, J.C.P., Vidal, R.F.A.M.: Modeling and Testing Hierarchical GUIs. In: Proceedings of the ASM 2005 - 12th International Workshop on Abstract State Machines, Paris - France, March 8–11 (2005)
Sabbah, D.: Aspect-Oriented software development. In: Proceedings of the Third International Conference on Aspect-oriented Software Development, Lancaster, UK (2004)
Stroulia, E., El-Ramly, M., Iglinski, P., Sorenson, P.: User Interface Reverse Engineering in Support of Interface Migration to the Web. Automated Software Engineering 10, 271–301 (2003)
Stroulia, E., El-Ramly, M., Kong, L., Sorenson, P., Matichuk, B.: Reverse Engineering Legacy Interfaces: An Interaction-Driven Approach. In: Proceedings of the WCRE 1999 (1999)
Vanderdonckt, J., Bouillon, L., Souchon, N.: Flexible Reverse Engineering of Web Pages with VAQUISTA. In: Proceedings of the IEEE 8th Working Conf. on Reverse Engineering (2001)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Paiva, A.C.R., Faria, J.C.P., Mendes, P.M.C. (2008). Reverse Engineered Formal Models for GUI Testing. In: Leue, S., Merino, P. (eds) Formal Methods for Industrial Critical Systems. FMICS 2007. Lecture Notes in Computer Science, vol 4916. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-79707-4_16
Download citation
DOI: https://doi.org/10.1007/978-3-540-79707-4_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-79706-7
Online ISBN: 978-3-540-79707-4
eBook Packages: Computer ScienceComputer Science (R0)