2009•University Libraries (University of Maryland)Open access

Using GUI Run-Time State as Feedback for Test Automation

Xun Yuan, Atif M. Memon

Open full text 1 citations

Abstract

Graphical user interfaces (GUIs) are the sole mode of interaction between end-users and back-end code for almost all of today's software applications. Because of this strategic role of GUIs, their quality has become important. During GUI testing, test cases---modeled as sequences of user events---sample the vast input space of all possible sequences with the goal of detecting faults; for effective testing, it is important to sample this space carefully. Existing techniques either sample manually or employ manually constructed abstract models---the abstraction and/or subsequent test-case generation algorithms enable sampling. This report presents an alternative approach to GUI testing -- it's focus is on developing a fully automatic model-driven technique to generate GUI test cases. The technique is novel in that it uses feedback from the execution of a ``seed test suite'' on a GUI. The seed suite is generated automatically using an existing structural event-interaction graph (EIG) model of the GUI. During its execution, the run-time effect of each GUI event on all other events pinpoints new important event-semantic interaction (ESI) relationships between them, which are used to automatically create an ESI graph (ESIG) model and generate new test cases. Together with a reverse-engineering algorithm used to obtain the EIG, seed suite, ESIG, and new test cases, the feedback-based technique yields a fully automatic, end-to-end GUI testing process.

Open-access reader

About this research paper

What this paper is about

Graphical user interfaces (GUIs) are the sole mode of interaction between end-users and back-end code for almost all of today's software applications. Because of this strategic role of GUIs, their quality has become important. During GUI testing, test cases---modeled as sequences of user events---sample the vast input space of all possible sequences with the goal of detecting faults; for effective testing, it is important to sample this space carefully. Existing techniques either sample manually or employ manually constructed abstract models---the abstraction and/or subsequent test-case generation algorithms enable sampling. This report presents an alternative approach to GUI testing -- it's focus is on developing a fully automatic model-driven technique to generate GUI test cases. The technique is novel in that it uses feedback from the execution of a ``seed test suite'' on a GUI. The seed suite is generated automatically using an existing structural event-interaction graph (EIG) model of the GUI. During its execution, the run-time effect of each GUI event on all other events pinpoints new important event-semantic interaction (ESI) relationships between them, which are used to automatically create an ESI graph (ESIG) model and generate new test cases. Together with a reverse-engineering algorithm used to obtain the EIG, seed suite, ESIG, and new test cases, the feedback-based technique yields a fully automatic, end-to-end GUI testing process.

Why it matters

OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Graphical user interfaces (GUIs) are the sole mode of interaction between end-users and back-end code for almost all of today's software applications. Because of this strategic role of GUIs, their quality has become important. During GUI testing, test cases---modeled as sequences of user events---sample the vast input space of all possible sequences with the goal of detecting faults; for effective testing, it is important to sample this space carefully. Existing techniques either sample manually or employ manually constructed abstract models---the abstraction and/or subsequent test-case generation algorithms enable sampling. This report presents an alternative approach to GUI testing -- it's focus is on developing a fully automatic model-driven technique to generate GUI test cases. The technique is novel in that it uses feedback from the execution of a ``seed test suite'' on a GUI. The seed suite is generated automatically using an existing structural event-interaction graph (EIG) model of the GUI. During its execution, the run-time effect of each GUI event on all other events pinpoints new important event-semantic interaction (ESI) relationships between them, which are used to automatically create an ESI graph (ESIG) model and generate new test cases. Together with a reverse-engineering algorithm used to obtain the EIG, seed suite, ESIG, and new test cases, the feedback-based technique yields a fully automatic, end-to-end GUI testing process.

Key concepts: Automation, Computer science, Test (biology), State (computer science), Engineering, Programming language, Mechanical engineering, Paleontology

Related papers

Back to paper searchBrowse research topicsOriginal source
Using GUI Run-Time State as Feedback for Test Automation — Research Paper | ScholarLens