Software Test UI Identifier Updates Through Semantic Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automated software tests fail due to changes in user interface element identifiers, such as renaming, despite underlying functionality remaining the same, leading to inefficiencies and resource waste in manual reconfiguration.

Innovation Solution

Techniques for automatically identifying semantically equivalent user interface elements in updated software artifacts by analyzing screenshots or code, updating test definitions to reference these elements, and modifying affected tests to prevent future failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If automated tests use fixed user interface element identifiers, then test execution is straightforward and automated, but tests fail when UI element identifiers change even though functionality remains the same

Engineering Contradiction:
Improvetest execution automationVSAvoidtest execution reliability
Core Design Contradiction:
Extent of automationVSReliability

Solution Approach 1:

The patent changes the parameter used to identify UI elements from fixed identifiers to dynamic identifiers based on semantic equivalence. Instead of relying on static element IDs that may change, the system uses screenshots and AI-based image recognition to dynamically identify elements by their visual and functional characteristics, allowing tests to adapt when identifiers change.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent replaces the traditional mechanical approach of string-matching UI element identifiers with an AI-based visual recognition system. Instead of programmatically searching for element IDs in code, the system uses machine learning models to analyze screenshots and identify UI elements based on their visual appearance and spatial position, substituting automated image processing for traditional code-based identification.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If manual reconfiguration is performed when tests fail, then test accuracy can be maintained, but time and resources are wasted

Engineering Contradiction:
Improvetest accuracyVSAvoidmanual reconfiguration time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements self-service by enabling the test system to automatically detect and adapt to UI changes without human intervention. When a test fails due to UI element changes, the system automatically captures screenshots, uses AI to identify the changed elements, updates the test definitions with new element identifiers, and reexecutes tests - completely automating what previously required manual reconfiguration.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces feedback loops where test execution results automatically trigger analysis and correction processes. When tests fail, the system feeds this information back into the test definition through automated analysis of screenshots and AI-based element identification, continuously improving test accuracy without manual intervention.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If UI element identifiers are changed during software updates, then software can be improved and updated, but existing automated tests break

Engineering Contradiction:
Improvesoftware update capabilityVSAvoidtest execution efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces dynamics into the test system by making element identification adaptive rather than static. The system continuously adapts to UI changes by using AI-based visual recognition to dynamically identify elements based on their current state in screenshots, allowing the test system to remain effective despite ongoing software updates and identifier changes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent performs preliminary action by proactively detecting UI changes before they cause test failures. The system continuously monitors UI elements using screenshot analysis and AI recognition, identifying changes in element identifiers or positions ahead of time and automatically updating test definitions to prevent future test breaks.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250225060A1Automatic update of user interface element identifiers for software artifact tests
Publication Date: 2025.07.10 SAP SE
  • US20250225060A1 patent drawing
  • US20250225060A1 patent drawing
  • US20250225060A1 patent drawing

AI summary

The present disclosure provides techniques and solutions for automatically correcting software tests. When a test failure is detected, it is determined whether a screenshot or code associated with a second version of a software artifact includes a user interface element that has a semantically equivalent identifier to a user interface element in a screenshot or code associated with a first version of the software artifact. Identifying a semantically equivalent identifier can include determining a section of the user interface, in the screenshot of the code, of the first version of the software artifact where the user interface is located and searching the corresponding section of the user interface of the second version of the software artifact. A definition of the software test can be updated to reference the semantically equivalent user interface element.