Multi-Version Application Testing via Modular Blueprint Models

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing testing methods for web-delivered software applications are limited, as they assume each breaking change to the application coincides with a breaking change to the corresponding automated test, making it impossible to run tests against previous versions of the application.

Innovation Solution

A method that uses application blueprints to build an application model, allowing for the testing of multiple versions of an application by separating application features and test interfaces, enabling dynamic construction of the application model and execution of test cases across different versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a single test case is used against web-delivered software, then the testing process is simple, but it becomes impossible to run tests against previous versions of the application when breaking changes occur

Engineering Contradiction:
ImproveAbility to test multiple application versionsVSAvoidTesting system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the monolithic test case into modular test cases that can be independently configured and executed against different application versions. Each test case is broken down into reusable components that can be selectively applied based on the target version, allowing the testing system to adapt to multiple versions without requiring complete test suites for each version.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates universal test case components that can function across multiple application versions. By designing test cases with configurable parameters and reusable elements, the same test infrastructure can target different versions of the application, making the testing system multi-functional rather than version-specific.

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

2Reliability

If automated tests are updated to match breaking changes in the application, then the tests remain accurate for the current version, but they cannot be run against previous versions

Engineering Contradiction:
ImproveTest accuracy for current versionVSAvoidAbility to test previous versions
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent performs preliminary actions by creating a version mapping structure that documents relationships between application versions and their corresponding test cases before testing begins. This preliminary organization allows the system to quickly determine which test cases are appropriate for each version, maintaining test accuracy for the current version while enabling retrospective testing of previous versions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of test case components that can be selectively applied to different versions. Rather than modifying the original test cases in a way that breaks version compatibility, the system generates appropriate copies or configurations of test cases that match the specific version being tested, preserving both accuracy and adaptability.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If multiple test cases are created for different application versions, then all versions can be tested, but the testing system becomes more complex to manage

Engineering Contradiction:
ImproveCoverage of multiple application versionsVSAvoidTest case management difficulty
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent merges multiple version-specific test cases into a unified test framework using a version mapping mechanism. This mapping structure consolidates the management of test cases across versions, allowing operators to manage tests centrally rather than maintaining separate, disjointed test suites for each version, thereby reducing operational complexity while maintaining comprehensive coverage.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10019345B2Executing multi-version tests against a multi-version application
Publication Date: 2018.07.10 HULU LLC
  • US10019345B2 patent drawing
  • US10019345B2 patent drawing
  • US10019345B2 patent drawing

AI summary

Particular embodiments provide a test system that allows the testing of different versions. The test system uses a repository of features that are included in the multiple versions of the application. When new features are added to the application, they may be added to the repository. When a test is performed, an application blueprint is used to build an application model using features from the repository. Then, a test case for the version can be run using the application model. By maintaining the repository of features and then dynamically building the application model for the version of the application, the testing of different versions of the application can be performed.