Adaptive Object Test Framework for Microservice Regression Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional techniques for writing and updating tests to align with new code changes in microservices architectures are laborious and time-consuming, especially in agile development environments, leading to inefficient and difficult testing processes.
Innovation Solution
A test-oriented architectural framework using adaptive objects and JSON Contracts for generating data structures that facilitate efficient testing by automatically converting JSON objects into JSON Contracts, enabling rapid regression testing and snapshot testing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional techniques are used for writing and updating tests to align with new code changes, then test coverage can be maintained, but the testing process becomes laborious and time-consuming
Solution Approach 1:
The system performs self-service by automatically generating test cases and updating test data structures based on code changes. The test framework autonomously identifies modified code, generates corresponding test cases, and updates test data without requiring manual intervention from testers, thereby maintaining test coverage while significantly reducing the time required for the testing process
Solution Approach 2:
The system performs preliminary action by pre-generating test data structures and test cases before actual testing begins. The framework anticipates code changes and prepares corresponding test scenarios in advance, allowing tests to be executed immediately when code is deployed, thus maintaining up-to-date test coverage without time-consuming manual test creation
2Measurement precision
If manual test updates are performed to align with new code changes, then test accuracy can be maintained, but the process becomes laborious and complex
Solution Approach 1:
The system replaces the mechanical manual process of test creation and updates with an automated computational system. The test framework uses algorithms to automatically generate test cases, validate test data structures, and update tests based on code changes, substituting manual mechanical operations with automated intellectual processes that maintain accuracy while reducing complexity
Solution Approach 2:
The system introduces an intermediary test framework that acts as a mediator between code changes and test execution. This framework automatically processes code modifications, generates appropriate test cases, and manages test data structures, thereby maintaining test accuracy while shielding users from the complexity of manual test management through automated intermediate processing
3Productivity
If automated testing is implemented for rapid regression testing, then testing speed is improved, but test maintenance becomes more challenging
Solution Approach 1:
The system implements dynamics by making the test framework adaptive and self-adjusting. The framework dynamically generates and updates test cases based on actual code changes, automatically adapting to new functionalities and modifications. This dynamic behavior maintains high testing speed while simplifying maintenance, as the system automatically updates tests to reflect current code states without requiring manual intervention
Solution Approach 2:
The system incorporates feedback mechanisms where test execution results automatically inform subsequent test generation and updates. The framework monitors test outcomes and uses this feedback to refine and maintain test cases, ensuring that automated tests remain accurate and relevant as code evolves, thereby maintaining high productivity while reducing maintenance challenges through self-correcting feedback loops
Data Source
AI summary
A test-oriented architectural framework for determining application test results using adaptive objects is described. A data structure for data communications associated with a system-under-test (SUT) is generated for the test-oriented architectural framework. In a test framework associated with the SUT, services that communicate with the SUT using objects are identified. Each object includes at least one field and data items that correspond to the fields. An object is communicated between the SUT and the service associated with the SUT. Based on this object, the test framework generates a structure that maps the set of fields in the object to the data types of the data items therein. Additional objects communicated between the SUT and the service are then automatically regression tested using the structure.


