Test Load Distribution Over Cloud Infrastructure Landscapes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing complexity of software systems poses challenges in efficient testing, requiring significant time and resources to ensure high-quality results, especially when dealing with microservices deployed on cloud infrastructure.
Innovation Solution
A computer-implemented method for selecting tests to execute over microservices in a cloud environment, which involves determining sets of products and infrastructure landscape types, and iteratively selecting landscape types based on predefined probabilities for each product to run specific tests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If comprehensive testing is performed on all microservices with all possible component combinations across different infrastructure landscape types, then testing coverage and quality assurance are improved, but testing time and resource consumption increase significantly
Solution Approach 1:
The patent applies partial action by selecting and executing only a subset of relevant tests rather than running all possible tests. The system determines which tests are actually needed based on the specific changes detected in the microservices, thereby reducing testing time while maintaining adequate quality assurance coverage for the modified components.
Solution Approach 2:
The system changes the parameter of test selection from a static comprehensive approach to a dynamic approach based on detected changes. By monitoring what has actually changed in the microservices and adjusting the test suite accordingly, the system optimizes the balance between testing coverage and time consumption.
2Reliability
If comprehensive testing is performed on all microservices with all possible component combinations, then testing coverage and quality assurance are improved, but resource consumption increases significantly
Solution Approach 1:
The system executes only the necessary subset of tests rather than all possible tests, thereby reducing computational resources, processing power, and infrastructure consumption while still maintaining adequate quality assurance for the changed microservices.
Solution Approach 2:
The testing system automatically determines what needs to be tested by detecting changes in the microservices themselves, eliminating the need for manual test planning and resource allocation. The system serves itself by autonomously selecting the appropriate test suite based on the detected changes.
3Manufacturing precision
If all tests are executed for every product iteration, then testing thoroughness is improved, but testing efficiency and productivity decrease
Solution Approach 1:
The system performs partial testing by executing only the relevant tests needed for the current product iteration based on detected changes. This maintains sufficient testing thoroughness for the modified components while dramatically improving testing efficiency and development productivity.
Solution Approach 2:
The system performs preliminary detection of changes in the microservices before selecting tests. This preliminary action allows the system to pre-determine which tests are necessary, avoiding unnecessary test execution and improving overall testing efficiency while maintaining thoroughness where needed.
4Measurement precision
If the testing system manually determines which tests to execute, then test selection accuracy can be improved, but automation level and speed decrease
Solution Approach 1:
The testing system automatically detects changes in the microservices and autonomously determines which tests need to be executed without manual intervention. This self-service capability maintains high test selection accuracy while achieving full automation, improving both speed and consistency of test selection.
Solution Approach 2:
The system uses feedback from change detection in the microservices to automatically adjust test selection. By continuously monitoring what has changed and using that information to determine necessary tests, the system achieves both high accuracy in test selection and complete automation.
Data Source
AI summary
The present disclosure relates to computer-implemented methods, software, and systems for implementing selection and distribution of tests to run over microservices executed on various infrastructure landscape types. A set of products that include microservices to be tested is determined. A set of infrastructure landscape types are determined for test executions for each respective product so that each type is associated with a predefined probability of selection from each set corresponding to each product. For each iteration of a schedule of iterations for test executions for a respective product over a period of time, a respective infrastructure landscape type from a respective set of infrastructure landscape types for hosting each product from the set of products is selected, and a test from the set is executed over the respective product when the product is running on a selected infrastructure landscape type according to the selection.


