Software Build Testing Using Baseline Data Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software testing relies heavily on manual skills to identify impacted test cases, which is error-prone and inefficient, especially when software updates occur.

Innovation Solution

A system and method for automatically testing software builds using a test package that generates baseline and target data, comparing them to identify changes and recommend modifications, including adding or removing test cases and scripts, leveraging Machine Learning and AI techniques for data comparison and recommendation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual skills are used to identify impacted test cases, then flexibility in handling diverse software changes is maintained, but error rate increases and efficiency decreases

Engineering Contradiction:
Improveaccuracy of identifying impacted test casesVSAvoidefficiency of identifying impacted test cases
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs self-service by automatically comparing software build data with baseline data to identify impacted test cases without human intervention. The automated testing framework executes tests, captures results, and generates reports autonomously, eliminating manual analysis while improving both accuracy and efficiency.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Manual mechanical processes of comparing test cases against software changes are replaced with automated computational systems. The system uses data comparison algorithms and machine learning models to automatically identify impacted test cases, substituting human cognitive processes with computational mechanisms that are faster and more accurate.

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

2Reliability

If comprehensive test packages are created to cover all software functionalities, then testing coverage is improved, but time required for regression testing increases

Engineering Contradiction:
Improvetesting coverageVSAvoidtime required for regression testing
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The comprehensive test package is segmented into modular test cases that can be independently executed. The system divides the testing process into discrete units based on software modules or functionalities, allowing selective execution of only those test cases that are impacted by changes, rather than running the entire test suite for every regression test.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of executing the full test package for every regression test, the system performs partial action by selectively running only the subset of test cases that are actually impacted by the software changes. This is achieved through intelligent analysis of change impact, executing only necessary tests rather than exhaustive testing of all functionalities.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If test cases and automation scripts are updated manually after software modifications, then adaptability to changes is maintained, but time consumption and error probability increase

Engineering Contradiction:
Improveadaptability to software changesVSAvoidtime for updating test cases
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system implements continuous feedback loops where test execution results are automatically analyzed and fed back into the test case management system. When software modifications are detected, the system automatically updates test cases and automation scripts based on the feedback from test results, maintaining adaptability while eliminating manual update processes.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary actions by proactively updating test cases and automation scripts before they are needed for execution. When software changes are detected, the system automatically generates updated test cases in advance, so that when regression testing is required, the test package is already prepared and adapted to the current software state.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11681609B1Identifying feature modification in software builds using baseline data
Publication Date: 2023.06.20 WEBOMATES INC
  • US11681609B1 patent drawing
  • US11681609B1 patent drawing
  • US11681609B1 patent drawing

AI summary

A system and a method for automatically testing software builds. The system includes testing a first software build using a test package. The test package includes at least a test strategy, a test case, a test model, an automation test script, a crowdsource script, and a manual test script. Further, baseline data is generated based upon a successful execution of the test package on the first software build. Further, a second software build is tested using the test package. Subsequently, the target data is generated based upon an execution of the test package on the second software build. The system then identifies a change in the second software build by comparing the target data with the baseline data. Further, a modification is recommended to the test package for the second software build using Artificial Intelligence (AI) techniques and Natural Language Processing (NLP).