Test Suite Minimization via Test Case Classification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software test suites grow over time, leading to database locking, resource wastage, and unplanned delays due to their finite and physical nature, impacting deadlines and efficiency.

Innovation Solution

A system and method for classifying test cases by creating a test step master list, generating sequence diagrams, and categorizing test cases as independent, asynchronous, or synchronous to optimize test suite execution time, using techniques like regular expressions and Apriori mining to identify and delete duplicates, and applying minimum common path algorithms for classification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If test suites are expanded over time to cover more test cases and test steps, then testing completeness is improved, but execution time and resource consumption increase

Engineering Contradiction:
Improvetesting completenessVSAvoidexecution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the test suite into multiple test cases and further into test steps, creating a hierarchical structure that enables selective execution. By organizing tests independently, the system can execute only necessary portions rather than running the entire suite, thereby reducing execution time while maintaining testing coverage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary classification of test cases into independent, asynchronous, and synchronous categories before execution. This pre-processing enables the system to determine optimal execution strategies in advance, identifying which tests can run in parallel and which must be sequential, thus minimizing overall execution time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If test suites are expanded over time to cover more test cases and test steps, then testing completeness is improved, but resource wastage increases

Engineering Contradiction:
Improvetesting completenessVSAvoidresource wastage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements partial execution of test suites by selectively running only the necessary test cases based on their classification and dependencies. Rather than executing the entire expanded test suite, the system performs partial action on relevant tests, reducing resource consumption while maintaining adequate testing coverage.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If test suites are expanded over time to cover more test cases and test steps, then testing completeness is improved, but database locking and resource conflicts increase

Engineering Contradiction:
Improvetesting completenessVSAvoiddatabase locking
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

By segmenting the test suite into independent test cases and steps, the patent enables parallel execution of non-conflicting tests. This segmentation reduces the time any single test holds database locks, minimizing locking conflicts and resource contention even as the overall test suite grows.

Inventive Principle:
Principle #1Segmentation

4Reliability

If test suites are expanded over time to cover more test cases and test steps, then testing completeness is improved, but unplanned time delays increase

Engineering Contradiction:
Improvetesting completenessVSAvoidunplanned time delays
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary classification and dependency analysis of test cases before execution. By identifying synchronous tests that require sequential execution and asynchronous tests that can run in parallel upfront, the system avoids unplanned delays during actual test execution, enabling more accurate time estimation and scheduling.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10037264B2Test suite minimization
Publication Date: 2018.07.31 HCL TECH LTD
  • US10037264B2 patent drawing
  • US10037264B2 patent drawing
  • US10037264B2 patent drawing

AI summary

Disclosed is a method and system for classifying test cases. In one implementation, the method comprises creating a test step master list comprising a plurality of test case, one more test step associated with the plurality of test case, and a test step identification number associated with the one more test step. Further, the method comprises generating a sequence diagram for each of the plurality of test cases based on the test step master list. Furthermore, the method comprises classifying, by the processor, each of the plurality of test cases in to an independent test case or an asynchronous test case or a synchronous test case based on the sequence diagram.