Towards a pattern language for model-based GUI testing

Graphical user interfaces (GUIs) have become popular as they appear in everydays' software. GUIs have become an ideal way of interacting with computer programs, making the software friendlier to its users. GUIs have grown, and so has the usage of UI Patterns featured in GUIs. UI Patterns are recurring solutions to solve common GUI design problems. We developed the notion of UI Test Patterns that, are able to test different implementations of UI Patterns. Therefore, we created a new methodology called Pattern-Based GUI Testing (PBGT) that aims at systematizing and automating the GUI testing process. PBGT samples the input space using UI Test Patterns, which provide a reusable and configurable test strategy, in order to test a GUI that was implemented using a set of UI Patterns. In this paper we present three UI Test Patterns: Login, Master/Detail and Sort.

[1]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[2]  Ana C. R. Paiva,et al.  Visual Abstract Notation for Gui Modelling and Testing - VAN4GUIM , 2008, ICSOFT.

[3]  Robert C. Martin Agile Software Development, Principles, Patterns, and Practices , 2002 .

[4]  Martin Schäf,et al.  Trends in Model-based GUI Testing , 2012, Adv. Comput..

[5]  Cyril S. Ku,et al.  Design Patterns , 2008, Wiley Encyclopedia of Computer Science and Engineering.

[6]  Gerard G. Meszaros,et al.  A pattern language for pattern writing , 1997 .

[7]  Jenifer Tidwell Designing Interfaces , 2005 .

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

[9]  João Pascoal Faria,et al.  Inferring User Interface Patterns from Execution Traces of Web Applications , 2014, ICCSA.

[10]  Mary Lou Soffa,et al.  A comprehensive framework for testing graphical user interfaces , 2001 .

[11]  Fabio Paternò,et al.  ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models , 1997, INTERACT.

[12]  Mika Katara,et al.  Model-Based Testing Through a GUI , 2005, FATES.

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

[14]  Ana C. R. Paiva,et al.  PBGT tool: an integrated modeling and testing environment for pattern-based GUI testing , 2014, ASE.

[15]  Max Jacobson,et al.  A Pattern Language: Towns, Buildings, Construction , 1981 .

[16]  Haeng-Kon Kim Hybrid Model Based Testing for Mobile Applications , 2013 .

[17]  James A. Whittaker,et al.  Model‐Based Software Testing , 2002 .

[18]  Ana C. R. Paiva,et al.  Web Application Model Generation through Reverse Engineering and UI Pattern Inferring , 2014, 2014 9th International Conference on the Quality of Information and Communications Technology.

[19]  Miguel Nabuco,et al.  Pattern Based GUI Testing for Mobile Applications , 2014, 2014 9th International Conference on the Quality of Information and Communications Technology.

[20]  Ana C. R. Paiva,et al.  A novel approach using alloy in Domain-Specific Language engineering , 2015, 2015 3rd International Conference on Model-Driven Engineering and Software Development (MODELSWARD).

[21]  Ana C. R. Paiva,et al.  Specification-Based Testing of User Interfaces , 2003, DSV-IS.

[22]  Ana C. R. Paiva,et al.  PETTool: A pattern-based GUI testing tool , 2010, 2010 2nd International Conference on Software Technology and Engineering.

[23]  Ana C. R. Paiva,et al.  A pattern-based approach for GUI modeling and testing , 2013, 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE).

[24]  Ana C. R. Paiva,et al.  A GUI modeling DSL for pattern-based GUI testing PARADIGM , 2014, 2014 9th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE).