Test Suite Optimization via Redundancy Clustering and Function Reconstruction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software testing suites become cumbersome and inefficient over time due to the accumulation of redundant, obsolete, and duplicate test cases, making it difficult to identify reusable scenarios and maintain an integrated business model, leading to defects slipping through to production.

Innovation Solution

A method and system that analyze test suites for redundancy, cluster non-redundant test cases based on similarity, identify reusable test functions, and reconstruct test cases using these functions to optimize the suite, thereby eliminating redundancy and improving maintenance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If test cases are accumulated over time for every software release, then test coverage increases, but test suite complexity and maintenance difficulty increase

Engineering Contradiction:
Improvetest coverageVSAvoidtest suite complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the test suite into modular test case units that can be independently analyzed, stored, and managed. Each test case is broken down into discrete components (test data, preconditions, steps, expected results) that can be separately processed by the system, enabling efficient redundancy detection and maintenance without managing the entire suite as a monolithic entity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a digital representation or model of the test suite structure and relationships. By maintaining a structured repository of test case metadata and using automated analysis algorithms, the system creates a virtual model that enables detection of redundant test cases through comparison, thereby managing complexity without physically organizing every test case manually.

Inventive Principle:
Principle #26Copying

2Reliability

If numerous test cases are added to cover new features, then functionality coverage improves, but identifying obsolete and duplicate test cases becomes difficult

Engineering Contradiction:
Improvefunctionality coverageVSAvoididentifying redundant test cases
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent implements an automated feedback mechanism where the system continuously analyzes the test suite, compares test cases against each other and against the current software version, and identifies redundant or obsolete test cases. This feedback loop provides testers with actionable insights about which test cases to maintain, update, or remove, making the detection of duplicates systematic rather than manual.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent replaces manual inspection and analysis of test cases with automated computational methods. The system uses algorithms to compare test case parameters, analyze test execution results, and detect redundancies automatically, substituting human cognitive effort with machine-based analysis that can handle large volumes of test cases efficiently.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Reliability

If test suites are expanded to include all test scenarios, then comprehensive testing is achieved, but execution time and maintenance effort increase

Engineering Contradiction:
Improvetesting comprehensivenessVSAvoidtesting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements a dynamic test suite management system that adapts the test case set based on current software state, change history, and risk assessment. Rather than executing all test cases uniformly, the system dynamically determines which test cases are most relevant to current changes, enabling comprehensive testing of affected areas while reducing unnecessary execution of unchanged components.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameters of test case selection and execution based on multiple factors including code change impact analysis, test result history, and priority assignments. By dynamically adjusting which test cases are executed and how they are prioritized, the system maintains comprehensive coverage where needed while reducing overall execution time through intelligent parameter-based filtering.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9779013B2Method and system for optimizing a test suite comprising plurality of test cases
Publication Date: 2017.10.03 WIPRO LTD
  • US9779013B2 patent drawing
  • US9779013B2 patent drawing
  • US9779013B2 patent drawing

AI summary

The present disclosure relates to a method and system for optimizing a test suite comprising plurality of test cases. In an embodiment, the pluralities of test cases are received from data sources. The method identifies one or more redundant and non-redundant test cases among the plurality of test cases in the test suite and computes similarity percentage between each of the non-redundant test cases by comparing test description and steps of each non-redundant test case with test description and steps of other non-redundant test cases. The non-redundant test cases are grouped into clusters based on the similarity percentage. Further, the method identifies test functions in each of the clusters for determining reusable test functions. Upon identifying the reusable test functions, test cases in each of the clusters are reconstructed by replacing each of the test cases with the reusable test function references thereby optimizing the test suite.