Test Load Distribution Over Cloud Infrastructure Landscapes

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvetesting coverageVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #16Partial or excessive action

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.

Inventive Principle:
Principle #35Parameter changes

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

Engineering Contradiction:
Improvetesting coverageVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

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.

Inventive Principle:
Principle #16Partial or excessive action

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.

Inventive Principle:
Principle #25Self-service

3Manufacturing precision

If all tests are executed for every product iteration, then testing thoroughness is improved, but testing efficiency and productivity decrease

Engineering Contradiction:
Improvetesting thoroughnessVSAvoidtesting efficiency
Core Design Contradiction:
Manufacturing precisionVSProductivity

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.

Inventive Principle:
Principle #16Partial or excessive action

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.

Inventive Principle:
Principle #10Preliminary action

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

Engineering Contradiction:
Improvetest selection accuracyVSAvoidautomation level
Core Design Contradiction:
Measurement precisionVSExtent of automation

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20250103472A1Test load distribution over landscape types in a cloud infrastructure
Publication Date: 2025.03.27 SAP SE
  • US20250103472A1 patent drawing
  • US20250103472A1 patent drawing
  • US20250103472A1 patent drawing

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.