Test Suite Minimization via Test Case Classification
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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
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.
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
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.
Data Source
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.


