Test Case Selection via Feature Clustering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software testing faces challenges in efficiently selecting relevant test cases due to time and resource constraints, as conventional methods require running all test cases to obtain code coverage information and often fail to consider factors beyond code execution, such as execution environment and software modules.

Innovation Solution

A method that extracts features from candidate test cases and clusters them with other test cases based on these features, allowing for the selection of similar test cases without running them, thereby improving the effectiveness and efficiency of software testing by automatically identifying affected test cases post-bug fixes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all test cases are run to obtain code coverage information, then testing completeness is improved, but time consumption and resource usage increase

Engineering Contradiction:
Improvetesting completenessVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts relevant features from test cases (such as code coverage, execution environment, software module) and uses these extracted features to select test cases, rather than running all test cases to gather information. This extraction approach enables intelligent selection without exhaustive execution.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs preliminary analysis by extracting features and clustering test cases before actual execution. By pre-organizing test cases into clusters based on their features, the system can quickly identify and select relevant test cases without needing to run all of them first.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If conventional test case selection methods are used, then simplicity of operation is maintained, but test case selection accuracy deteriorates

Engineering Contradiction:
Improvesimplicity of operationVSAvoidtest case selection accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The system automatically extracts features, clusters test cases, and selects relevant test cases without requiring manual intervention. The automated clustering and selection process maintains ease of operation while significantly improving selection accuracy by considering multiple factors simultaneously.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent transforms test case selection from a binary approach (run/all or run/some) to a multi-parameter evaluation system. By changing the selection criteria to include multiple parameters (code coverage, execution environment, software module), the system achieves higher accuracy while maintaining operational simplicity through automation.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If test cases are selected based only on code coverage, then selection process simplicity is maintained, but comprehensive testing capability deteriorates

Engineering Contradiction:
Improveselection process complexityVSAvoidcomprehensive testing capability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent merges multiple selection criteria (code coverage, execution environment, software module) into a unified clustering approach. By combining these dimensions into a single feature extraction and clustering process, the system achieves comprehensive testing capability without proportionally increasing process complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The feature extraction and clustering mechanism serves multiple functions simultaneously: it analyzes code coverage, execution environment, and software module information all through the same process. This multi-functional approach enables comprehensive testing capability while maintaining selection process simplicity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11288173B1Test case selection
Publication Date: 2022.03.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11288173B1 patent drawing
  • US11288173B1 patent drawing
  • US11288173B1 patent drawing

AI summary

Test case selection methods are disclosed. A feature of a candidate test case and respective features of a set of test cases are extracted. The set of test cases is clustered into a plurality of clusters based on the respective features of the set of test cases. At least one cluster related to the candidate test case is determined from the plurality of clusters based on the feature of the candidate test case. At least one test case similar to the candidate test case is selected from a plurality of test cases included in the at least one cluster.