Title :
Automated testing of GUI applications: Models, tools, and controlling flakiness
Author :
Memon, Atif M. ; Cohen, Morris B.
Author_Institution :
Dept. of Comput. Sci., Univ. of Maryland, College Park, MD, USA
Abstract :
System testing of applications with graphical user interfaces (GUIs) such as web browsers, desktop, or mobile apps, is more complex than testing from the command line. Specialized tools are needed to generate and run test cases, models are needed to quantify behavioral coverage, and changes in the environment, such as the operating system, virtual machine or system load, as well as starting states of the executions, impact the repeatability of the outcome of tests making tests appear flaky. In this tutorial, we present an overview of the state of the art in GUI testing, consisting of both lectures and demonstrations on various platforms (desktop, web and mobile applications), using an open source testing tool, GUITAR. We show how to setup a system under test, how to extract models without source code, and how to then use those models to generate and replay test cases. We then present a lecture on the various factors that may cause flakiness in the execution of GUI-centric software, and hence impact the results of analyses and experiments based on such software. We end with a demonstration of a community resource for sharing GUI testing artifacts aimed at controlling these factors. This tutorial targets both researchers who develop techniques for testing GUI software, and practitioners from industry who want to learn more about model-based GUI testing or who run and rerun GUI tests and often find their runs are flaky.
Keywords :
automatic testing; graphical user interfaces; online front-ends; program testing; public domain software; GUI software testing; GUI-centric software; GUITAR; Web browsers; automated GUI application testing; behavioral coverage; flakiness control; graphical user interfaces; model-based GUI testing; open source testing tool; operating system; source code; system load; system testing; virtual machine; Benchmark testing; Computational modeling; Graphical user interfaces; Software; Software engineering; Tutorials;
Conference_Titel :
Software Engineering (ICSE), 2013 35th International Conference on
Conference_Location :
San Francisco, CA
Print_ISBN :
978-1-4673-3073-2
DOI :
10.1109/ICSE.2013.6606750