Action Broker for Multi-Path Test Automation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software testing methodologies face challenges in efficiently executing test cases across multiple execution paths, such as UI and API paths, due to limitations in automation tools that require awareness of available implementations and specific path formats, leading to inflexibility and increased maintenance costs.

Innovation Solution

A broker-based system that selects automation implementations using a priority list and converts results between different execution paths, allowing test cases to execute actions through multiple paths without awareness of specific implementations or path formats, enabling flexible switching between UI and API paths.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If automated tests are run by simulating user input through UI paths, then the tests can verify graphical user interface functionality, but the execution time and complexity increase compared to API-based approaches

Engineering Contradiction:
ImproveUI functionality verificationVSAvoidtest execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system dynamically selects between UI path and API path implementations based on priorities defined in the priority list and availability of implementations. The broker can switch execution paths during test case execution, allowing the system to adapt to different conditions and optimize execution time while maintaining UI verification capabilities

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The action broker serves as an intermediary between the test case execution engine and multiple automation implementations. It manages the selection and coordination of different execution paths (UI and API), converting results between paths and enabling the system to leverage both approaches without direct coupling between test cases and specific implementation details

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple automation implementations are maintained for the same action through different execution paths, then the system gains flexibility and reliability, but the device complexity and maintenance effort increase

Engineering Contradiction:
Improveexecution path flexibilityVSAvoidautomation implementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The action broker is designed as a universal component that can handle multiple types of automation implementations (UI path, API path, and future paths) through a unified interface. The priority list data structure provides a universal mechanism for managing multiple execution paths, allowing the system to maintain flexibility without proportionally increasing complexity

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

Solution Approach 2:

The broker acts as an intermediary layer that abstracts the complexity of multiple implementations from test cases. It centralizes the logic for selecting between UI and API paths, converting results between different path formats, and managing implementation availability, thereby preventing complexity from propagating throughout the entire testing system

Inventive Principle:
Principle #24Intermediary (Mediator)

3Manufacturing precision

If test cases are tightly coupled with specific automation implementations and path formats, then the implementation can be precise and efficient, but the ease of operation and maintenance decrease when modifications are needed

Engineering Contradiction:
Improvetest execution precisionVSAvoidtest maintenance ease
Core Design Contradiction:
Manufacturing precisionVSEase of operation

Solution Approach 1:

The system segments the test automation architecture into distinct components: test cases that define what to test, the broker that manages how to test it, and multiple independent automation implementations that execute specific paths. This segmentation allows each component to be modified independently without affecting others, maintaining precision while improving maintainability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system uses dynamic selection of automation implementations based on the priority list and availability conditions. Test cases remain abstract and implementation-agnostic, while the broker dynamically resolves which specific implementation to use. This allows precise test execution through multiple paths while maintaining ease of operation, as test cases don't need to be rewritten when implementations change

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8856749B2Multi-path brokered test automation execution
Publication Date: 2014.10.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8856749B2 patent drawing
  • US8856749B2 patent drawing
  • US8856749B2 patent drawing

AI summary

A test case can be run with actions from the test case being executed in multiple execution paths. This can be done with the aid of an action broker. For example, the broker may identify available automation implementations for the actions and use a priority list to select between available automation implementations for executing an action from the test case. The broker may also perform conversions of results of actions for use by implementations executing other actions in different execution paths, as well as passing results between implementations in different execution paths.