Automated Test Failure Clustering for Defect Attribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automated program code testing environments often fail to accurately distinguish between defects in the program code and defects in the automated test code, leading to inefficiencies and lower adoption rates due to the difficulty in measuring the effectiveness of automated testing, which can result in increased costs and resource wastage.

Innovation Solution

Implementing a method to winnow and cluster automated test failures, identifying those due to program code defects separately from those due to automated test code defects, and comparing the results to manual testing to assess the value and effectiveness of automated testing, thereby allowing for targeted modifications to improve testing accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If automated testing is implemented to reduce manual testing efforts, then productivity is improved, but measurement precision deteriorates due to inability to accurately distinguish between program code defects and test code defects

Engineering Contradiction:
Improvetesting efficiencyVSAvoiddefect identification accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent segments the defect identification process by creating separate clustering mechanisms for program code defects and test code defects. Automated test failures are divided into distinct groups based on their root causes, allowing independent analysis and measurement of each defect type's effectiveness separately

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary analysis layer that sits between automated test execution and defect identification. This intermediary process clusters failures and determines whether they stem from program code or test code, providing accurate attribution without requiring manual intervention for each failure

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If automated testing effectiveness is difficult to measure, then loss of information increases regarding testing value, but implementing measurement mechanisms increases device complexity

Engineering Contradiction:
Improvetesting effectiveness dataVSAvoidmeasurement system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent implements feedback mechanisms that automatically collect and analyze test failure data, clustering results, and defect attribution information. This feedback loop continuously measures testing effectiveness by comparing expected versus actual outcomes, providing actionable insights without manual assessment

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The measurement system is designed to be self-service, automatically clustering failures and attributing defects without requiring external manual analysis. The system serves its own measurement needs by autonomously processing test data and generating effectiveness metrics

Inventive Principle:
Principle #25Self-service

3Loss of time

If automated test failures are not properly analyzed, then loss of time increases due to unresolved defects, but implementing analysis processes increases device complexity

Engineering Contradiction:
Improvedefect resolution timeVSAvoidanalysis process complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by clustering and categorizing test failures immediately upon occurrence, rather than waiting for manual analysis. Defects are pre-grouped and attributed to their source (program code or test code) before resolution begins, reducing the time required for subsequent debugging and fixing

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11256612B2Automated testing of program code under development
Publication Date: 2022.02.22 MICRO FOCUS LLC
  • US11256612B2 patent drawing
  • US11256612B2 patent drawing
  • US11256612B2 patent drawing

AI summary

Automated test failures that result from automated testing of program code under development are windows to include just the automated test failures occurring for a first time and that are due to automated test code defects or program code defects. The automated test failures that remain after winnowing are clustered into automated test failure clusters that each individually corresponding to a different automated test code defect or a different program code defect. The automated test failure clusters are window to include just the automated test failure clusters that each individually correspond to a different program code defect. The automated test failure clusters that remain after winnowing are output.