Test Automation System for Mode-Agnostic Software Service Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional testing systems struggle to perform end-to-end automated testing across various operational modes of software services, such as user interface, batch processing, and API, due to their focus on single modes of operation, which limits their ability to ensure reliable and consistent results in complex software systems.

Innovation Solution

The implementation of a test automation system that enables the formation of test scenarios with chained steps and scenarios, using JSON objects to pass data between steps and scenarios, allowing for mode-agnostic testing and facilitating end-to-end regression testing by integrating with continuous integration/continuous development processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional testing systems focus on single modes of operation, then testing simplicity is maintained, but the ability to perform end-to-end testing across multiple operational modes deteriorates

Engineering Contradiction:
Improveability to test across multiple operational modesVSAvoidtesting system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The testing system is designed to handle multiple operational modes (user interface, batch processing, API) through a single unified framework. The system uses mode-agnostic test scenarios that can dynamically adapt to different service types, allowing one testing system to perform multiple testing functions across diverse operational modes without requiring separate specialized testing tools for each mode.

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

Solution Approach 2:

JSON objects serve as an intermediary data format that enables seamless data passing between test steps and scenarios across different operational modes. This standardized data structure acts as a mediator that translates between various service types and the testing framework, allowing the system to maintain simplicity while achieving versatility in testing multiple modes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If manual testing is used for complex software systems, then flexibility in handling different modes is maintained, but testing speed and accuracy deteriorate

Engineering Contradiction:
Improvetesting speedVSAvoidtesting consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Test scenarios are pre-configured with chained steps that define the entire testing workflow before execution. The test automation system prepares test data, test cases, and expected outcomes in advance, then automatically executes them across multiple operational modes. This preliminary preparation enables fast, consistent execution without manual intervention during actual testing, maintaining both speed and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system automatically compares actual test results with expected outcomes and provides feedback on test pass/fail status. This automated feedback mechanism ensures consistent evaluation across all operational modes, maintaining reliability while enabling high-speed automated execution rather than slow manual verification.

Inventive Principle:
Principle #23Feedback

3Reliability

If end-to-end testing across multiple modes is implemented, then testing comprehensiveness is improved, but manual intervention requirements increase

Engineering Contradiction:
Improvesoftware verification reliabilityVSAvoidautomation level
Core Design Contradiction:
ReliabilityVSExtent of automation

Solution Approach 1:

The comprehensive end-to-end testing process is segmented into discrete, automated test steps that can be chained together in test scenarios. Each step is independently defined and executable, covering different operational modes. This segmentation allows the system to achieve high automation levels while maintaining comprehensive coverage, as each segmented step can be automatically executed and validated without manual intervention.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The testing system dynamically adapts to different operational modes during automated execution. Test scenarios are configured to automatically determine which services to invoke and what data to pass based on the specific testing context. This dynamic behavior enables comprehensive multi-mode testing to be fully automated, as the system can autonomously adjust its behavior rather than requiring manual configuration for each mode.

Inventive Principle:
Principle #15Dynamics

4Ease of operation

If data passing between test steps is implemented, then test scenario coherence is improved, but system complexity increases

Engineering Contradiction:
Improvetest scenario configurationVSAvoiddata chaining mechanism
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

JSON objects provide a homogeneous data structure that standardizes data passing between all test steps and scenarios. This uniform data format simplifies the configuration process, as developers use the same data structure regardless of which services or operational modes are involved. The homogeneity of the JSON format reduces operational complexity by providing a consistent interface for data exchange throughout the entire test automation system.

Inventive Principle:
Principle #33Homogeneity

Data Source

PatentUS20220350731A1Method and system for test automation of a software system including multiple software services
Publication Date: 2022.11.03 RIA ADVISORY LLC
  • US20220350731A1 patent drawing
  • US20220350731A1 patent drawing
  • US20220350731A1 patent drawing

AI summary

A mechanism is provided to perform test automation of software systems operating in a variety of modes. Embodiments enable formation of test scenarios having a set of successive steps that can be executed by selected services in the software system environment under test. Data from each step can be provided to a next step by step chaining. Step chaining data can be provided by, for example, entire json objects or the like, thereby normalizing expected input data for the steps. Embodiments further enable formation of project features that have a set of successive test scenarios. Data from each test scenario can be provided to a next test scenario by scenario chaining. Again, scenario chaining data is provided in a normalized fashion. By enabling the passage of data between test scenario steps and feature test scenarios, end-to-end automated testing can be performed in a mode agnostic fashion.