Automated test oracles for GUIs

  • Authors:
  • Atif M. Memon;Martha E. Pollack;Mary Lou Soffa

  • Affiliations:
  • Dept. of Computer Science, University of Pittsburgh, Pittsburgh, PA;Dept. of Computer Science and Intelligent Systems Program, University of Pittsburgh, Pittsburgh, PA;Dept. of Computer Science, University of Pittsburgh, Pittsburgh, PA

  • Venue:
  • SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
  • Year:
  • 2000

Quantified Score

Hi-index 0.01

Visualization

Abstract

Graphical User Interfaces (GUIs) are critical components of today's software. Because GUIs have different characteristics than traditional software, conventional testing techniques do not apply to GUI software. In previous work, we presented an approach to generate GUI test cases, which take the form of sequences of actions. In this paper we develop a test oracle technique to determine if a GUI behaves as expected for a given test case. Our oracle uses a formal model of a GUI, expressed as sets of objects, object properties, and actions. Given the formal model and a test case, our oracle automatically derives the expected state for every action in the test case. We represent the actual state of an executing GUI in terms of objects and their properties derived from the GUI's execution. Using the actual state acquired from an execution monitor, our oracle automatically compares the expected and actual states after each action to verify the correctness of the GUI for the test case. We implemented the oracle as a component in our GUI testing system, called Planning Assisted Tester for grapHical user interface Systems (PATHS), which is based on AI planning. We experimentally evaluated the practicality and effectiveness of our oracle technique and report on the results of experiments to test and verify the behavior of our version of the Microsoft WordPad's GUI.