GUI Object Addressing via Context-Aware Rule Templates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional automated GUI testing tools face challenges in quickly and correctly identifying GUI objects across various applications, requiring manual rule definition and modification, which is tedious and costly.

Innovation Solution

A system that automatically generates addressing queries for GUI objects by identifying the application context, retrieving and parsing rule documents, and applying XSLT-defined templates to generate unique XPath queries, allowing for flexible and reusable query generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional embedded rule sets are used for generating addressing queries, then the system can identify GUI objects in simple applications, but it cannot adapt to various different applications and requires manual modification for each application context

Engineering Contradiction:
Improveadaptability to different applicationsVSAvoidcomplexity of rule management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal rule template system that can generate addressing queries for multiple different application contexts. Instead of having separate hard-coded rules for each application, the system uses parameterized templates that can adapt to various GUI frameworks (Win32, WinForms, WPF, Java, etc.) through a single unified mechanism, making the testing tool versatile across different applications.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The rule templates are designed to be dynamic and configurable rather than static and fixed. The system allows rules to be loaded, modified, and applied based on the specific application context being tested. This dynamic approach enables the same template system to adapt to different GUI object models and addressing schemes without requiring permanent changes to the core rule set.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If hard-coded rules are used in testing tools, then the rules are stable and reliable, but they are difficult to modify and require manual construction for different application contexts

Engineering Contradiction:
Improveease of rule modificationVSAvoidreliability of query generation
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the rule system into separate, modular template components that can be independently configured and applied. Each rule template is a discrete unit that can be selected and customized based on the specific application context. This segmentation allows testers to modify only the relevant templates for a given application without affecting the entire rule set, improving ease of operation while maintaining reliability through consistent template structures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces template parameters as intermediaries between the fixed template structure and the variable application-specific requirements. These parameters act as placeholders that are filled with application-specific values during query generation, allowing the system to maintain reliable template structures while easily adapting to different applications through parameter configuration rather than direct rule modification.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If manual query construction is performed for each application context, then accurate object identification can be achieved, but the process becomes tedious and costly

Engineering Contradiction:
Improveprecision of object identificationVSAvoidproductivity of query generation
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent performs preliminary action by pre-defining rule templates that encapsulate common patterns for identifying GUI objects across different applications. These templates are prepared in advance with the correct structure and logic, so that during actual testing, the system only needs to select and parameterize the appropriate template rather than constructing queries from scratch. This preliminary preparation maintains precision while dramatically improving productivity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by allowing the same rule template to be reused across multiple application contexts with different parameter values. Instead of manually constructing unique queries for each application, the system copies the proven template structure and adapts it through parameter substitution. This copying mechanism ensures consistent, accurate object identification while reducing the repetitive manual work of query construction.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8533664B2Method and system to automatically generate GUI object addressing queries
Publication Date: 2013.09.10 ORACLE INT CORP
  • US8533664B2 patent drawing
  • US8533664B2 patent drawing
  • US8533664B2 patent drawing

AI summary

One embodiment of the present invention provides a system that automatically generates addressing queries for objects rendered on a graphical user interface (GUI). During operation, the system receives a request for GUI object-addressing query for an application to be tested. The system first identifies the application context, and retrieves a rule document describing GUI object-addressing query rules according to the identified application context. Next, the system parses the rule document to generate an applicable query rule set for the application. Based on the applicable query rule set, the system generates a set of query candidates and determines a unique query for each GUI object.