Multi-Version Application Testing via Modular Blueprint Models
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
Data Source
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.


