Dynamic Test Execution Plan Derivation for Parallel Regression Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current test execution plans for regression testing are inefficient due to static nature, failing to account for dynamic dependencies between test cases, leading to resource wastage and prolonged test cycles, especially in parallel execution scenarios.

Innovation Solution

A system and method for dynamically deriving a test execution plan using balanced partitioning and scheduling techniques, which considers test case dependencies and resource availability to facilitate concurrent execution while preserving the semantics of test case order.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If test cases are executed in parallel to reduce test cycle time, then productivity improves, but test execution reliability deteriorates due to dependency violations

Engineering Contradiction:
Improvetest execution speedVSAvoidtest execution reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments test cases into multiple partitions based on their dependency relationships. Each partition contains test cases that can be executed independently without violating dependencies. This segmentation enables parallel execution of partitions while maintaining test execution reliability within each partition.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic test plan generation that adapts to changing test conditions, resource availability, and dependency relationships. The system dynamically adjusts the execution plan during test cycles, re-partitioning test cases as needed to maintain reliability while maximizing parallel execution opportunities.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If static test execution plans are used to simplify workload distribution, then device complexity reduces, but adaptability deteriorates due to inability to handle dynamic parameters

Engineering Contradiction:
Improveexecution plan complexityVSAvoidplan adaptability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The system transitions from static to dynamic test execution plans. The dynamic plan generation algorithm automatically adapts to varying team sizes, regression suite subsetting, release requirements, and abends. This maintains simplicity in plan creation while achieving high adaptability through automated dynamic adjustment.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs self-service by automatically generating and adjusting execution plans without requiring manual intervention. The algorithm autonomously handles workload distribution, dependency management, and plan amendment based on current test conditions, eliminating the need for static pre-defined plans.

Inventive Principle:
Principle #25Self-service

3Reliability

If all test cases start from initial state with state reset to ensure reliability, then test execution reliability improves, but loss of time increases due to expensive state resets

Engineering Contradiction:
Improvetest state reliabilityVSAvoidstate reset time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies local quality by preserving test states locally within partitions rather than resetting all test cases to initial state. Test cases within a partition maintain their state information, avoiding redundant resets. This selective state management maintains reliability where needed while eliminating unnecessary state reset overhead.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system performs preliminary actions by pre-processing test cases to identify and mark those that require state resets versus those that can maintain state. This preliminary classification enables the execution engine to apply state reset only where necessary, reducing overall reset time while maintaining test reliability.

Inventive Principle:
Principle #10Preliminary action

4Productivity

If test cases are clustered based on resource constraints to improve productivity, then productivity improves, but test execution reliability deteriorates due to ignoring test case dependencies

Engineering Contradiction:
Improveparallel execution efficiencyVSAvoiddependency preservation
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments test cases into partitions based on dependency relationships rather than simple resource constraints. Each partition is constructed to contain only test cases with resolved dependencies, ensuring that clustering for parallel execution does not violate test case dependencies. This dependency-aware segmentation maintains both productivity and reliability.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9378120B2Automated test execution plan derivation system and method
Publication Date: 2016.06.28 TATA CONSULTANCY SERVICES LTD
  • US9378120B2 patent drawing
  • US9378120B2 patent drawing
  • US9378120B2 patent drawing

AI summary

A system and method is disclosed that has the ability to automatically derive a test execution plan for parallel execution of test cases, while considering the complex dependencies across the test cases and preserving the semantics of test execution. The execution plan, so generated, provides for balanced workload distribution and scheduling of the test cases for improving the test execution cycles of the test suites in a cost effective manner.