Configurable Automation Framework for Scalable Test Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing automation frameworks require significant hard coding of business logic for different configurations when testing applications, leading to reduced maintainability and scalability, as they treat each configuration as a unique test case, making it inefficient to add new configurations.

Innovation Solution

A configurable automation framework that populates a test case suite based on user-specified configuration options, allowing execution of the same test script across multiple configurations by modifying an easily accessible configuration file, rather than modifying business logic in the test script.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If each different configuration is treated as a unique test case with hard coded business logic, then the automation framework can execute tests for specific configurations, but the maintainability and scalability are reduced when new configurations need to be added

Engineering Contradiction:
Improveability to support different configurationsVSAvoidcomplexity of test scripts
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal test case structure that can handle multiple configurations through parameterization. Instead of having separate hard-coded test cases for each configuration, a single test case template is designed to accept different configuration parameters (OS type, dataset type, volume type, etc.), making the test framework multi-functional and adaptable to various configurations without increasing script complexity

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

Solution Approach 2:

The patent transforms fixed configuration values into variable parameters that can be dynamically changed. Configuration options are defined as parameters (e.g., operating system type, dataset type, volume type) that can be modified through configuration files or command-line arguments, allowing the same test script to execute across different configurations by simply changing parameter values rather than modifying the script itself

Inventive Principle:
Principle #35Parameter changes

2Productivity

If hard coding of business logic is used for each configuration combination, then specific test cases can be executed, but the productivity and efficiency are reduced when executing the same test script for multiple configurations

Engineering Contradiction:
Improveefficiency of test executionVSAvoidtime to modify test scripts
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary configuration setup by defining all possible configuration options and their combinations in advance through configuration files. The test framework pre-processes these configurations to generate the appropriate test instances, so when tests need to be executed for multiple configurations, the framework is already prepared with the parameter mappings and can efficiently execute the same test script across all configurations without requiring time-consuming script modifications

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If the automation framework requires modifying business logic in test scripts to add new configurations, then existing test cases remain stable, but the ease of operation and maintainability are reduced

Engineering Contradiction:
Improveease of adding configurationsVSAvoidcomplexity of configuration management
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent extracts configuration-specific logic from the test script business logic and places it into separate configuration files or parameter definitions. This separation allows configuration management to be handled independently from test execution logic. When new configurations need to be added, users only need to modify the configuration files (adding new parameter values or combinations) without touching the test script business logic, thereby improving ease of operation while maintaining clear separation of concerns

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9348569B1Method and system for a configurable automation framework
Publication Date: 2016.05.24 EMC IP HLDG CO LLC
  • US9348569B1 patent drawing
  • US9348569B1 patent drawing
  • US9348569B1 patent drawing

AI summary

A configurable automation framework includes a computer that executes an execution driver, a parser, a volume population engine, a configuration checker, an execution engine, and a logger. The execution driver receives user input that specifies configuration options and populates a test case suite based on each combination of the configuration options. The configuration options include operating system options, multipathing software options, volume options, array options, snapshot type options, and/or dataset options. The parser parses the test case to identify script instructions to test an application for each combination. The volume population engine creates volumes based on user input that specifies volume options. The execution engine executes the script instructions to test the application if the configuration checker determines that the computer is setup for each combination. The logger logs a result of executing the script instructions for each combination and outputs the result.