Browse Prior Art Database

Method for automated Graphical User Interface testing

IP.com Disclosure Number: IPCOM000010955D
Original Publication Date: 2003-Feb-05
Included in the Prior Art Database: 2003-Feb-05
Document File: 3 page(s) / 57K

Publishing Venue

IBM

Abstract

The article describes two testing applications developed by IBM* which can be used to automatically create a user interface map of a Graphical User Interface application and then to verify the user interface consistency.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 50% of the total text.

Page 1 of 3

Method for automated Graphical User Interface testing

The article describes two testing applications which can be used to automatically create a user interface map of a Graphical User Interface application and then to verify the user interface consistency.

    The mapping process involves exploring the user interface of the tested application looking for specific user interface patterns e.g. menu items ending in "..." and activating these control to move the tested application into a different state by possibly opening the associated dialog box (see the diagrams below for a more detailed explanation). New states are recursively explored for new user interface patterns e.g. a button ending in "..." And the process continues until all recognized controls have been activated and the associated application states mapped. The implementation for exploring the user interface allows the user interface patterns which change state to be configured and also small scriptlets to be executed where the actions to change the application are more complex. The application uses a set of specially coded and platform specific routines to recognize the controls in the test application user interface, these libraries provide all of the information (test, id, type, hit keys, enabled/disabled) about the user interface controls and also functions to allow the controls to be manipulated e.g. menu items or button clicks. Examples of the information that is provided includes:

The type of control i.e. button, list, menu item, etc. The text label of the control A numeric id which identifies a specific control The hit (or accelerator) key associated with the control The index of the control based on the total number of controls of that type The enabled state of the control

    The specially coded and platform specific routines can be dynamically extended to support new and custom user interface control types and hence the test application can be dynamically extended. The resulting map contains all of the information about the user interface that could be accessed and also how to access the different user interface runs on a successive run.

    The verifying process takes the user interface map as input and then a different version (maybe a translated version) and verifies that for the same rules, the same user interface states are displayed. Verification consists of checking that the user interface has a consistent type, number and control state between the input map and the testing application. The verification proce...