Standalone Test Executable Generation for Mobile App Debugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional application testing systems require external resources and network connectivity, making them inefficient for mobile developers who need to test applications on resource-constrained devices like smartphones and tablets, and they struggle with sandboxing limitations that prevent full testing functionality.

Innovation Solution

A system that allows users to select and generate a standalone test executable with customizable test modules, which can run on the host device without network connectivity, using static libraries when root access is unavailable, to perform testing functions like debugging and performance assessment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional application testing systems are used, then comprehensive testing functionality is available, but external resources and network connectivity are required which reduces efficiency for mobile developers

Engineering Contradiction:
Improvetesting efficiencyVSAvoidexternal resource dependency
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the testing functionality from external resources and network connectivity, creating a self-contained test executable that can run independently on the host device. The test executable includes all necessary test modules, static libraries, and configuration data embedded within it, eliminating the need for external testing resources during execution.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a copy of the testing system in the form of a standalone test executable. This executable contains replicated versions of the testing framework, test modules, and runtime libraries, allowing the complete testing functionality to be ported to the host device without requiring the original external testing infrastructure.

Inventive Principle:
Principle #26Copying

2Reliability

If root access is available on the host device, then comprehensive testing functionality can be executed, but the system becomes less adaptable to devices without root access

Engineering Contradiction:
Improvetesting functionalityVSAvoiddevice compatibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic adaptability by detecting whether the host device has root access and automatically adjusting the test executable's behavior accordingly. When root access is unavailable, the system dynamically switches to using static libraries that were pre-compiled for non-root environments, maintaining functionality across different device types without requiring manual configuration.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the operational parameters of the testing system based on device conditions. The test executable modifies its execution parameters such as library loading paths, permission requirements, and access methods depending on whether root access is present, allowing the same executable to adapt to different device configurations while maintaining core testing functionality.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If a standalone test executable is generated, then resource-constrained devices can perform testing without network connectivity, but the test executable must be customized to match device capabilities

Engineering Contradiction:
Improveautonomous testing capabilityVSAvoidcustomization requirements
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent performs preliminary actions by pre-compiled static libraries and pre-configured test modules before the actual testing occurs. The test executable is generated in advance with all necessary dependencies resolved and optimized for the specific host device architecture, so that when execution begins, the system already has everything needed to operate autonomously without network connectivity.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If comprehensive testing modules are included in the test executable, then full testing capability is achieved, but the executable size and resource consumption increase

Engineering Contradiction:
Improvetesting coverageVSAvoidexecutable size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the testing system into modular components including separate test modules, static libraries, and configuration data. This segmentation allows the test executable to include only the necessary components for a given testing scenario while maintaining the ability to load additional modules when needed, balancing comprehensive testing capability with reduced baseline executable size.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9268670B1System for module selection in software application testing including generating a test executable based on an availability of root access
Publication Date: 2016.02.23 GOOGLE LLC
  • US9268670B1 patent drawing
  • US9268670B1 patent drawing
  • US9268670B1 patent drawing

AI summary

Systems and methods are described for generating a test executable used for testing an application locally on a host device. A user interface allows selection of particular test modules for use. Based on the selected modules a test executable is generated. The test executable functionality may integrated with the application or be independent of the application. The host device executes the test executable which enables testing and debugging on the local device.