Dependency Graph Regression Testing for Selective Test Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current regression testing methods are inefficient and costly due to the need to run extensive test suites frequently, especially in agile and CI/CD environments, leading to high computational resource consumption and increased costs.

Innovation Solution

Implementing dependency graph analysis to map code dependencies and identify affected code elements, allowing for selective execution of a targeted subset of regression tests based on these changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If extensive test suites are run frequently in agile and CI/CD environments, then software quality and reliability are maintained, but computational resource consumption and costs increase significantly

Engineering Contradiction:
Improvesoftware qualityVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the full regression test suite into multiple subsets based on test priority and dependency analysis. Instead of executing the entire test suite, the system divides tests into high-priority critical tests and lower-priority optional tests, allowing selective execution that maintains software quality while reducing computational resource consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by executing only the necessary subset of regression tests rather than the complete suite. Through dependency graph analysis and priority scoring, the system determines which tests are essential for maintaining software reliability after code changes, thereby reducing computational resources while preserving quality through targeted testing.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If the entire regression test suite is executed on every code change, then complete coverage of potential regressions is achieved, but test execution time increases

Engineering Contradiction:
Improveregression detection completenessVSAvoidtest execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis before test execution by building a dependency graph of tests and code elements, and pre-calculating priority scores for each test. This preliminary action enables the system to quickly determine which tests should be executed first and which can be skipped, significantly reducing test execution time while maintaining comprehensive regression detection through strategic test selection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic test selection where the test execution plan adapts based on the specific code changes detected. The system dynamically adjusts which tests to run by analyzing the impact of changes on the dependency graph, ensuring that test execution time is optimized for each specific scenario while maintaining complete coverage where needed.

Inventive Principle:
Principle #15Dynamics

3Reliability

If all regression tests are executed, then comprehensive validation of code changes is performed, but development efficiency decreases due to slower feedback cycles

Engineering Contradiction:
Improvevalidation completenessVSAvoiddevelopment efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by tailoring the test execution strategy to the specific local changes in the codebase. Instead of uniformly executing all tests, the system identifies and executes only the tests locally relevant to the changed code elements, thereby maintaining validation completeness for affected areas while improving development efficiency through faster feedback cycles.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements feedback mechanisms that continuously monitor test results and refine the dependency graph analysis. This feedback enables the system to learn from previous test outcomes and improve its test selection accuracy over time, ensuring comprehensive validation where needed while accelerating development efficiency through more intelligent and faster test execution.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20260072811A1Optimized regression testing through dependency graph analysis and selective test execution
Publication Date: 2026.03.12 PILLAY SANJAY
  • US20260072811A1 patent drawing
  • US20260072811A1 patent drawing
  • US20260072811A1 patent drawing

AI summary

A method is provided for optimizing regression testing in a software development environment. The method includes analyzing source code to create a structural dependency graph that maps dependencies between code elements; identifying changes in the source code between a current version and a previous version; mapping the identified changes onto the structural dependency graph to determine affected code elements; selecting a subset of regression tests based on the affected code elements identified in the dependency graph; and executing the selected subset of regression tests to validate the changes in the source code.