Software Test Tagging Through Failure Analysis and NLP

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The process of tagging software tests is time-consuming and requires substantial effort whenever source code or tests are revised, updated, or edited, especially in collaborative software development environments where complex software is being developed.

Innovation Solution

A method and system that utilizes natural language processing and artificial intelligence to automatically generate tags for software tests based on failure analysis, leveraging previous executions and regression analysis to systematically and continuously revalidate tags for new or updated source code.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual tagging of test corpuses is performed, then tags can identify concepts and relationships in source code, but the process is time-consuming and requires substantial effort

Engineering Contradiction:
Improvetagging accuracyVSAvoidtagging time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs self-service by automatically generating tags through execution analysis without requiring manual human intervention. The computing device autonomously executes test cases, analyzes failures, and generates tags based on the analysis results, eliminating the need for manual tagging while maintaining high accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The manual mechanical process of tagging is replaced with an automated computational system. Instead of manually analyzing and tagging test corpuses, the system uses computing devices to automatically execute tests, analyze failures, and generate tags through programmed algorithms, substituting human effort with automated processing.

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

2Reliability

If tags are continuously updated with each source code revision, then tags remain current and accurate, but the effort required increases substantially

Engineering Contradiction:
Improvetag currencyVSAvoiddevelopment efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements continuous automatic tagging by executing test cases and generating tags whenever source code changes occur. This continuous process ensures tags remain current and accurate without requiring manual intervention at each revision stage, maintaining reliability while improving productivity through automation.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The system uses feedback from test execution results to automatically update tags. When test cases are executed and failures are detected, the system analyzes the failure information and generates or updates tags accordingly, creating a closed-loop feedback mechanism that keeps tags current without manual effort.

Inventive Principle:
Principle #23Feedback

3Reliability

If extensive testing is performed on new source code, then errors are detected early, but the time and resources required increase

Engineering Contradiction:
Improveerror detectionVSAvoidtesting duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary error detection by automatically executing test cases against new source code before formal release. Test cases are prepared in advance and automatically run when source code is submitted, detecting errors early in the development cycle without requiring extensive manual testing time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12579056B2Test tagging based on failure analysis
Publication Date: 2026.03.17 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12579056B2 patent drawing
  • US12579056B2 patent drawing
  • US12579056B2 patent drawing

AI summary

Tagging a corpus of tests based upon failure analysis. Access tags associated with test cases known to execute without error against an original corpus of source code. Access a test set associated with the accessed tags, the test set containing test cases. Access a new corpus of source code to be tested. Execute the new corpus of source code using test cases from the accessed test set. Access errors generated by execution of the new corpus of source code using the test cases. Determine locations in the new corpus of source code associated with the accessed errors. Execute natural language processing software to generate new tags associated with the locations in the new corpus of source code associated with the accessed errors.