Champion Test Case Generation for Software Fault Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Combinatorial Test Design (CTD) techniques face challenges in efficiently identifying test cases that effectively detect faults in a System Under Test (SUT), as they often require extensive manual effort and struggle to cover all possible system states and logic pathways.

Innovation Solution

A method and system that model inputs to the SUT as attributes with multiple values, generate reduced sets of test vectors for complete pairwise coverage, and designate 'champion test cases' based on execution results to increase fault detection likelihood, expanding the test case set to include these high-value cases.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If combinatorial test design generates all possible combinations of attribute values to achieve complete coverage, then test space coverage is improved, but the number of test cases increases exponentially making the process cumbersome

Engineering Contradiction:
Improvetest space coverageVSAvoidnumber of test cases
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the test case selection process into multiple phases: initial test vector generation, execution, analysis of results, and iterative refinement. By dividing the comprehensive test space into manageable segments and prioritizing them based on fault detection potential, the system achieves high coverage without requiring all possible combinations to be executed simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary analysis to identify and prioritize test vectors that have higher likelihood of detecting faults before full execution. By pre-processing test vectors to identify critical combinations and executing them first, the system achieves efficient fault detection without needing to run the complete test matrix.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If manual testing is used to identify and create test cases for various system states, then test case customization is improved, but the time required to build test cases and automation framework increases

Engineering Contradiction:
Improvetest case customizationVSAvoidtime to build test cases
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements self-service automation where the system automatically generates test vectors, executes them, analyzes results, and identifies champion test cases without requiring manual intervention at each step. The automated framework learns from execution results and autonomously refines the test suite, eliminating the time-consuming manual processes while maintaining test quality.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the parameters of test case generation by using attribute-value models and computational algorithms to automatically derive test vectors. By transforming the approach from manual specification to algorithmic generation with configurable attributes, the system maintains customization capability while dramatically reducing the time required to build test cases.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If fewer test cases are executed to reduce testing time, then productivity is improved, but the likelihood of detecting faults decreases

Engineering Contradiction:
Improvetesting speedVSAvoidfault detection capability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies local quality by identifying and prioritizing specific test vectors that have higher quality in terms of fault detection potential. Rather than treating all test cases equally, the system analyzes test vectors to identify those with critical attribute combinations and executes them first, ensuring that the subset of executed tests has maximized fault detection capability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements feedback mechanisms where execution results are analyzed to identify patterns and update the selection of subsequent test vectors. The system learns from each execution cycle, refining its understanding of which test combinations are most likely to detect faults, and uses this feedback to prioritize future test execution, maintaining high detection rates with fewer tests.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11263116B2Champion test case generation
Publication Date: 2022.03.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11263116B2 patent drawing
  • US11263116B2 patent drawing
  • US11263116B2 patent drawing

AI summary

Systems, methods, and computer-readable media for identifying a champion test case that provides an increased likelihood of exposing a fault and expanding a set of test cases to include the champion test case are described. The fault may occur in a System Under Test (SUT), which may be a hardware system or a software system. A weight may be assigned to a champion test case that indicates the relative strength of the test case in detecting faults. The weight may be used to influence the selection of other test cases.