Dynamic Test Execution Plan Derivation for Parallel Regression Testing
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
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.
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
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.
Data Source
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.


