An event‐flow model of GUI‐based applications for testing
Author:
- 2 January 2007
- journal article
- research article
- Published by Wiley in Software Testing, Verification and Reliability
- Vol. 17 (3) , 137-157
Abstract
Graphical user interfaces (GUIs) are by far the most popular means used to interact with today's software. The functional correctness of a GUI is required to ensure the safety, robustness and usability of an entire software system. GUI testing techniques used in practice are resource intensive; model‐based automated techniques are rarely employed. A key reason for the reluctance in the adoption of model‐based solutions proposed by researchers is their limited applicability; moreover, the models are expensive to create. Over the past few years, the present author has been developing different models for various aspects of GUI testing. This paper consolidates all of the models into one scalable event‐flow model and outlines algorithms to semi‐automatically reverse‐engineer the model from an implementation. Earlier work on model‐based test‐case generation, test‐oracle creation, coverage evaluation, and regression testing is recast in terms of this model by defining event‐space exploration strategies (ESESs) and creating an end‐to‐end GUI testing process. Three such ESESs are described: for checking the event‐flow model, test‐case generation, and test‐oracle creation. Two demonstrational scenarios show the application of the model and the three ESESs for experimentation and application in GUI testing. Copyright © 2007 John Wiley & Sons, Ltd.Keywords
This publication has 23 references indexed in Scilit:
- Designing and comparing automated test oracles for GUI-based software applicationsACM Transactions on Software Engineering and Methodology, 2007
- Automating regression testing for evolving GUI softwareJournal of Software Maintenance and Evolution: Research and Practice, 2005
- Advances in GUI Testing2003
- GUI testing: pitfalls and processComputer, 2002
- Hierarchical GUI test case generation using automated planningIEEE Transactions on Software Engineering, 2001
- An approach to fault modeling and fault seeding using the program dependence graphJournal of Systems and Software, 1997
- Strategic directions in human-computer interactionACM Computing Surveys, 1996
- User interface software toolsACM Transactions on Computer-Human Interaction, 1995
- A reduced test suite for protocol conformance testingACM Transactions on Software Engineering and Methodology, 1994
- Data Flow Analysis for Procedural LanguagesJournal of the ACM, 1979