Adaptive Regression Testing via Data Change Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing regression testing methods do not effectively address data changes, which can impact software behavior in complex computerized systems, leading to costly defects and inefficiencies, especially when they bypass the software development process.

Innovation Solution

An adaptive regression testing method that generates monitoring results to identify relevant data and source code segments, maps test cases to these segments, detects data changes, selects relevant test cases, and evaluates their impact, allowing for targeted testing and potential source code adjustments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If retest all technique is used to ensure software stability after changes, then reliability is improved, but productivity deteriorates due to the expensive and time-consuming nature of running the entire test suite

Engineering Contradiction:
Improvesoftware stabilityVSAvoidtesting efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the monolithic test suite into smaller, independent test case groups based on code change analysis. Instead of running all test cases after every change, the system identifies and executes only the relevant segments of tests that correspond to modified code areas, thereby maintaining reliability while improving productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by executing only a subset of test cases rather than the complete test suite. The system determines the minimum necessary test coverage by analyzing code changes and selecting only those test cases that are relevant to the modifications, avoiding unnecessary test executions.

Inventive Principle:
Principle #16Partial or excessive action

2Productivity

If regression test selection is performed to improve productivity by selecting part of the test suite, then productivity is improved, but measurement precision deteriorates because it becomes difficult to accurately determine which test cases are relevant to code changes

Engineering Contradiction:
Improvetesting efficiencyVSAvoidtest case selection accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent implements feedback mechanisms where test execution results and code change information are continuously analyzed to refine test case selection. The system learns from past test outcomes and code change patterns to improve the accuracy of identifying relevant test cases, thereby maintaining measurement precision while achieving productivity gains.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent replaces manual or simple automated test selection methods with advanced analytics and machine learning techniques. The system automatically analyzes code changes, historical test data, and software architecture to intelligently determine which test cases are relevant, substituting mechanical selection processes with sophisticated computational analysis.

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

3Ease of operation

If data changes are not considered in regression testing, then ease of operation is maintained, but reliability deteriorates because data changes can impact software behavior in complex computerized systems

Engineering Contradiction:
Improvetesting simplicityVSAvoidsoftware behavior stability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent creates a universal regression testing framework that simultaneously handles both code changes and data changes. The system is designed to monitor and respond to multiple types of changes (code modifications, data changes, configuration changes) within a single integrated process, maintaining ease of operation while improving reliability through comprehensive coverage.

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

Solution Approach 2:

The patent performs preliminary analysis of potential data changes before executing regression tests. The system proactively identifies data changes that may impact software behavior and pre-selects relevant test cases that should be executed in response to these changes, ensuring reliability is maintained without complicating the operational process.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10922217B1Adaptive regression testing
Publication Date: 2021.02.16 APPL MATERIALS ISRAEL LTD
  • US10922217B1 patent drawing
  • US10922217B1 patent drawing

AI summary

A method, non-transitory computer readable medium and a computerized system for adaptive regression testing. The method may include (a) generating or receiving monitoring results that are indicative of relevant data segments and relevant source code segments; (b) generating, based on the monitoring results, a first mapping that maps test cases of the multiple test cases to at least some of the relevant data segments; (c) detecting detected data changes introduced during a monitoring period that follows the execution of the regression tests; (d) selecting, based on the detected data changes and the first mapping, one or more selected test cases for evaluating an impact of the detected data changes; and (e) evaluating the impact of the detected data changes by executing the one or more selected test changes.