Murphy Tools: Utilizing Extracted GUI Models for Industrial Software Testing

One of the main challenges in adopting model-based testing (MBT) is the effort and expertise required to produce the formal models. For an existing system, there are various approaches to automate the process of creating the models. In this paper, we share our experiences from a long term industrial evaluation on automatically extracting models of graphical user interface (GUI) applications and utilizing the extracted models to automate and support GUI testing. While model extraction and GUI testing has been recently a popular research topic, most proposed approaches have limitations on what can be modeled and industry adoption has been lacking. We describe the process of using Murphy tools to extract GUI models and utilize these models to automate and support various testing activities. During the evaluation, test engineers of an industrial software company used Murphy tools to support their daily efforts in testing commercial software products during 1 year time period. The results from the evaluation were promising, significantly reducing time and effort required for GUI testing.

[1]  Andres Kull Automatic GUI Model Generation: State of the Art , 2012, 2012 IEEE 23rd International Symposium on Software Reliability Engineering Workshops.

[2]  Atif M. Memon,et al.  Rapid "crash testing" for continuously evolving GUI-based software applications , 2005, 21st IEEE International Conference on Software Maintenance (ICSM'05).

[3]  Gerard J. Holzmann,et al.  An Automated Verification Method for Distributed Systems Software Based on Model Extraction , 2002, IEEE Trans. Software Eng..

[4]  Leonardo Mariani,et al.  AutoBlackTest: Automatic Black-Box Testing of Interactive Applications , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[5]  Atif M. Memon,et al.  Automatically repairing event sequence-based GUI test suites for regression testing , 2008, TSEM.

[6]  Judy Bowen,et al.  UI-design driven model-based testing , 2013, Innovations in Systems and Software Engineering.

[7]  Atif M. Memon,et al.  Studying the fault-detection effectiveness of GUI test cases for rapidly evolving software , 2005, IEEE Transactions on Software Engineering.

[8]  Teemu Kanstrén,et al.  Industrial Adoption of Automatically Extracted GUI Models for Testing , 2013, EESSMOD@MoDELS.

[9]  Iulian Neamtiu,et al.  Targeted and depth-first exploration for systematic testing of android apps , 2013, OOPSLA.

[10]  Xuebing Yang,et al.  Graphic user interface modelling and testing automation , 2011 .

[11]  Porfirio Tramontana,et al.  A toolset for GUI testing of Android applications , 2012, 2012 28th IEEE International Conference on Software Maintenance (ICSM).

[12]  Teemu Kanstren,et al.  A Framework for Observation-Based Modelling in Model-Based Testing , 2010 .

[13]  Andreas Zeller,et al.  EXSYST: Search-based GUI testing , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[14]  Arie van Deursen,et al.  Crawling Ajax-Based Web Applications through Dynamic Analysis of User Interface State Changes , 2012, TWEB.

[15]  Atif M. Memon GUI Testing: Pitfalls and Process , 2002, Computer.

[16]  Porfirio Tramontana,et al.  The DynaRIA tool for the comprehension of Ajax web applications by dynamic analysis , 2013, Innovations in Systems and Software Engineering.

[17]  Tao Xie,et al.  A Grey-Box Approach for Automated GUI-Model Generation of Mobile Applications , 2013, FASE.

[18]  Atif M. Memon,et al.  An event‐flow model of GUI‐based applications for testing , 2007, Softw. Test. Verification Reliab..

[19]  Pekka Aho,et al.  Enhancing generated Java GUI models with valid test data , 2011, 2011 IEEE Conference on Open Systems.

[20]  Atif M. Memon,et al.  GUITAR: an innovative tool for automated testing of GUI-driven software , 2014, Automated Software Engineering.

[21]  Ina Schieferdecker,et al.  Automated Java GUI Modeling for Model-Based Testing Purposes , 2011, 2011 Eighth International Conference on Information Technology: New Generations.

[22]  João Pascoal Faria,et al.  Dynamic Reverse Engineering of Graphical User Interfaces , 2012 .

[23]  Carlos E. Silva,et al.  Combining static and dynamic analysis for the reverse engineering of web applications , 2013, EICS '13.

[24]  Pekka Aho,et al.  Dynamic reverse engineering of GUI models for testing , 2013, 2013 International Conference on Control, Decision and Information Technologies (CoDIT).

[25]  Jon Inggs,et al.  The first decade , 1996 .

[26]  Atif M. Memon,et al.  Accounting for defect characteristics in evaluations of testing techniques , 2012, TSEM.

[27]  Atif M. Memon,et al.  The first decade of GUI ripping: Extensions, applications, and broader impacts , 2013, 2013 20th Working Conference on Reverse Engineering (WCRE).

[28]  Arie van Deursen,et al.  Invariant-Based Automatic Testing of Modern Web Applications , 2012, IEEE Transactions on Software Engineering.

[29]  Ana C. R. Paiva,et al.  Reverse engineering of GUI models for testing , 2010, 5th Iberian Conference on Information Systems and Technologies.

[30]  Xuebing Yang,et al.  An FSM based GUI test automation model , 2010, 2010 11th International Conference on Control Automation Robotics & Vision.

[31]  Myra B. Cohen,et al.  GUI Interaction Testing: Incorporating Event Context , 2011, IEEE Transactions on Software Engineering.