Automated Remote Test Execution Platform

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of application testing is tedious and prone to errors due to the need for manual copying of files to remote devices, leading to costly testing errors and disruptions, especially when testing across different operating systems or configurations.

Innovation Solution

A system and method for automatically executing an application on a remote device by configuring a testing platform to gather and transmit test environment data, including installation locations and configuration settings, to install and execute the test application on the remote device, reducing the need for manual file copying and minimizing developer errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual copying of files is used to transfer test applications to remote devices, then the process is simple to implement, but it increases the burden of repeated operations and the likelihood of developer errors

Engineering Contradiction:
Improvesimplicity of implementationVSAvoidtesting efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system enables self-service automation where the testing platform automatically determines test environment data, transmits test applications and configuration files, and executes tests on remote devices without requiring manual developer intervention for file copying or environment setup

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The testing platform performs preliminary actions by automatically gathering test environment data (installation locations, configuration settings, input files) before test execution, and pre-configuring the remote device environment to match the source device, thereby eliminating the need for repeated manual file copying during iterative testing

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If manual file copying is performed repeatedly during testing iterations, then flexibility in modifying test applications is maintained, but costly testing errors occur due to forgotten or incorrect file updates

Engineering Contradiction:
Improveflexibility in test modificationVSAvoidtest result accuracy
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system implements feedback mechanisms where the testing platform automatically tracks which files have been modified in the source device and ensures the corresponding updates are transmitted to the remote device, providing verification that the correct files are copied to the correct locations, thereby preventing testing errors while maintaining flexibility

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The manual mechanical process of copying files is replaced with an automated electronic system that uses software agents and scripting to detect file changes, transmit updates, and verify successful deployment, eliminating human errors associated with manual file management while preserving the ability to modify tests flexibly

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

3Ease of operation

If the source device is used for testing, then development workflow is simplified, but the configuration of the source device may be changed or disrupted

Engineering Contradiction:
Improvedevelopment workflow simplicityVSAvoidsource device configuration stability
Core Design Contradiction:
Ease of operationVSStability of the object's composition

Solution Approach 1:

The system creates a virtual copy of the source device configuration by automatically determining test environment data (installation locations, registry settings, configuration files) and replicating it on the remote device, allowing tests to be executed on the copied environment without affecting the stability or configuration of the original source device

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The testing platform acts as an intermediary between the source device and the remote device, automatically managing the transmission and synchronization of test applications and environment data, thereby enabling the source device to remain stable while supporting flexible testing on remote devices

Inventive Principle:
Principle #24Intermediary (Mediator)

4Stability of the object's composition

If remote devices are used for testing to avoid disrupting the source device, then source device stability is maintained, but manual file copying overhead increases

Engineering Contradiction:
Improvesource device configuration stabilityVSAvoidtime spent on manual file copying
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The testing platform performs preliminary automatic configuration of the remote device by gathering test environment data from the source device and pre-installing necessary files and configurations before test execution, eliminating the need for manual file copying operations and reducing time overhead while maintaining source device stability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables self-service automation where the testing platform independently manages file transmission, environment setup, and test execution on remote devices without requiring manual developer intervention, thereby eliminating time-consuming manual file copying while preserving source device configuration stability

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9940224B2Automatic remote execution of an application
Publication Date: 2018.04.10 APPLE INC
  • US9940224B2 patent drawing
  • US9940224B2 patent drawing
  • US9940224B2 patent drawing

AI summary

Disclosed is a method of preparing and launching a test application on a first machine that is automatically executed on a second machine. A developer can prepare a test application on the first machine, and instead of the developer performing multiple steps to copy the test program to a second machine and set up the test environment, the method can automatically detect test environment data, and transmit the test application and the test environment data. Test environment data can include the directory of where the test program should be installed and executed. The test application can be run on the second machine and the results can be returned to the first machine where they can be displayed to the developer.