Automated UI Interaction Logging for Mobile App Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for testing mobile applications are limited in capturing user interaction data in real-world scenarios, particularly failing to analyze all possible combinations of layouts and controls, leading to incomplete field testing.

Innovation Solution

A system and method that involves instrumenting applications with a measurement library to log user interaction events, which are then analyzed and visualized to provide comprehensive data on user interactions, allowing for the evaluation of user interfaces beyond beta testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If beta testers are used for field testing, then user feedback can be collected, but not all possible combinations of layouts and controls can be tested

Engineering Contradiction:
Improvetesting coverageVSAvoidnumber of layout and control combinations
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent creates automated virtual users that copy and replicate human interaction patterns with the application. These virtual users systematically navigate through all possible layout and control combinations, generating comprehensive test data without requiring proportional increases in human beta testers. The virtual users simulate various user behaviors and interaction sequences to achieve complete coverage of the UI space.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system dynamically changes interaction parameters such as touch location, swipe direction, button press duration, and navigation sequences. By systematically varying these parameters across multiple virtual user sessions, the system explores all possible combinations of layouts and controls. This parametric approach allows comprehensive testing scalability without increasing human resource requirements.

Inventive Principle:
Principle #35Parameter changes

2Loss of information

If manual beta testing is used, then subjective user experience feedback is obtained, but objective usage paradigm analysis is limited

Engineering Contradiction:
Improveusage paradigm dataVSAvoidtesting process complexity
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The patent replaces manual mechanical testing processes with automated computational systems. Virtual users programmatically interact with the application, and automated analysis algorithms process the generated interaction data. This substitution transforms subjective feedback collection into objective, quantifiable usage paradigm analysis, extracting detailed information about user flows, interaction patterns, and UI element usage frequencies without manual intervention complexity.

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

Solution Approach 2:

The system implements continuous feedback loops where virtual user interactions are automatically captured, analyzed, and used to generate insights about usage paradigms. The feedback mechanism systematically processes interaction events to identify patterns, detect anomalies, and provide actionable information about application usage without requiring manual analysis of individual user sessions.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If comprehensive field testing of all layout and control combinations is performed, then complete user interaction analysis is achieved, but testing time and resources increase significantly

Engineering Contradiction:
Improveuser interaction analysis accuracyVSAvoidtesting duration
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary setup by automatically generating virtual user profiles, defining interaction parameter ranges, and configuring test scenarios before actual testing begins. This preliminary configuration establishes the framework for comprehensive testing, allowing the system to systematically explore all layout and control combinations without ad-hoc decision-making during execution. The preliminary action phase reduces overall testing time by preventing reconfiguration and manual setup during the testing process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Multiple virtual users continuously interact with the application simultaneously in parallel, maintaining continuous testing action without interruption. The system orchestrates concurrent execution of numerous test sessions, each exploring different interaction patterns and UI combinations. This continuous parallel execution achieves comprehensive coverage much faster than sequential manual testing, maintaining measurement precision while dramatically reducing total testing duration.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10268350B2Automatically capturing user interactions and evaluating user interfaces in software programs using field testing
Publication Date: 2019.04.23 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10268350B2 patent drawing
  • US10268350B2 patent drawing
  • US10268350B2 patent drawing

AI summary

A method includes analyzing, on a first computing device, data from second computing device(s) of user interaction with a user interface of an application previously executed on the second computing device(s). The data corresponds to events caused by the user interaction with the user interface of the application. The first computing device generates representation(s) of the analyzed data and outputs the representation(s) of the user interaction. Another method includes capturing and logging, by a computing device, events caused by user interaction with a user interface of an application when the application is executed on the computing device. In response to a trigger, data comprising the captured and logged events is sent toward another computing device. Another method includes instrumenting a measurement library into an application to create an instrumented version of the application, and sending the instrumented application to computing device(s). Methods, apparatus, software, and computer program products are disclosed.