Multi-language Playback Framework for Cross-lingual UI Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing software programs that support multiple languages is challenging due to inconsistencies in user interface element identification across different languages, leading to difficulties in testing and ensuring functionality across various language builds.

Innovation Solution

A playback framework that uses a hierarchical search of user interface element properties to find equivalents between recorded actions in one language build and the corresponding elements in another language build, allowing for reliable testing and playback of test recordings across different language versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If a test recording is created on a first language build, then the testing process can be automated, but the test recording cannot be directly applied to second language builds due to user interface element identification inconsistencies

Engineering Contradiction:
Improvetest automationVSAvoidlanguage compatibility
Core Design Contradiction:
Extent of automationVSAdaptability or versatility

Solution Approach 1:

The patent introduces an intermediary mapping mechanism that translates user interface element identifiers from the first language to the second language. This mapping layer acts as a mediator between the test recording (created in first language) and the second language build, enabling cross-language test execution without requiring separate test recordings for each language.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the parameter of user interface element identification from language-specific identifiers to language-agnostic or mapped identifiers. By transforming the identification parameters through the mapping mechanism, the system enables test recordings to adapt across different language builds without modifying the core test logic.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If separate test recordings are created for each language build, then language-specific testing accuracy is improved, but development time and resource requirements increase significantly

Engineering Contradiction:
Improvetesting accuracyVSAvoiddevelopment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent creates a universal test recording framework that can be applied across multiple language builds. A single test recording created in the first language can be mapped and executed on second language builds through the intermediary mapping mechanism, eliminating the need to create separate test recordings for each language while maintaining testing accuracy.

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

Solution Approach 2:

The patent performs preliminary action by establishing the language mapping mechanism in advance. Once the mapping between first language and second language user interface elements is defined, it can be reused across multiple test recordings and language builds, reducing the time required for future cross-language testing.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If traditional test playback is used on different language builds, then the testing process is simple, but functionality consistency across languages cannot be ensured

Engineering Contradiction:
Improvetesting simplicityVSAvoidfunctionality consistency
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The mapping mechanism serves as an intermediary that automatically translates test element identifiers across languages during playback. This maintains the simplicity of the testing process while ensuring functionality consistency, as the mapping layer handles the language translation transparently without requiring complex manual intervention.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10191832B2Multi-language playback framework
Publication Date: 2019.01.29 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10191832B2 patent drawing
  • US10191832B2 patent drawing
  • US10191832B2 patent drawing

AI summary

Technology related to tools for supporting multi-language software programs is disclosed. In one example of the disclosed technology, a method can be used for testing a user interface of a software product. The method can include receiving a test recording captured using a first build of the software product targeted to a first language. A localized language file corresponding to a second language can be received. The test recording can be played back on a second build of the software product targeted to the second language. The playing back can include finding an equivalent under-test user interface element to a recorded user interface element of the test recording using a hierarchical search of properties in the localized language file. Additionally, the playing back can include performing a recorded action of the test recording on the equivalent under-test user interface element.