Source Code File Association System for CI/CD Test Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional technologies do not provide users with information regarding the specific source code exercised when integration test suites are executed, leading to inefficiencies in the Continuous Integration and Continuous Delivery (CI/CD) lifecycle and requiring the execution of all integration test suites, regardless of the source code under test.

Innovation Solution

A source code file association system that preprocesses integration test suite output and encodes it for input into a machine learning system, which identifies the portion of source code exercised by the integration test suites, allowing for dynamic mapping of test suites to source code files.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all integration test suites are executed regardless of source code changes, then comprehensive testing coverage is ensured, but execution time and computational resources are wasted on irrelevant test suites

Engineering Contradiction:
Improvetesting coverageVSAvoidtest suite execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary analysis of source code changes before executing integration test suites. By preprocessing commit messages, file changes, and code metrics upfront, the system prepares association data that enables selective test execution, avoiding unnecessary test suite runs while maintaining comprehensive coverage for relevant tests

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces the mechanical approach of executing all test suites with a machine learning-based prediction system. The ML model analyzes code changes and predicts which test suites are relevant, substituting brute-force execution with intelligent prediction to reduce execution time while maintaining reliability

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

2Ease of operation

If integration test suites are executed without source code association, then simple test execution is maintained, but information about specific source code exercised is lost

Engineering Contradiction:
Improvetest execution simplicityVSAvoidsource code exercise information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The system introduces an intermediary association layer between test suites and source code. The machine learning model acts as a mediator that connects executed test suites with the source code files they exercise, capturing and storing these associations without complicating the actual test execution process

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system creates a copy or representation of the test-source code association data in a database. This copied information preserves the relationship between test suites and source code without interfering with the simplicity of test execution, allowing users to query which code was exercised by which tests

Inventive Principle:
Principle #26Copying

3Productivity

If machine learning preprocessing is implemented to identify source code associations, then targeted test execution is enabled, but system complexity increases

Engineering Contradiction:
Improvetest execution efficiencyVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the test optimization problem into distinct components: code change analysis, association prediction, and test selection. By dividing the complex ML preprocessing task into manageable segments (parsing, feature extraction, prediction, validation), the system improves productivity while managing complexity through modular architecture

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The machine learning model serves multiple functions: it predicts test suite relevance, identifies exercised source code, and provides associations for both unit and integration tests. This multi-functionality justifies the added complexity by delivering comprehensive benefits across different test types and improving overall system productivity

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

Data Source

PatentUS20250138988A1Machine learning method for associating test files with source code
Publication Date: 2025.05.01 DELL PROD LP
  • US20250138988A1 patent drawing
  • US20250138988A1 patent drawing
  • US20250138988A1 patent drawing

AI summary

Methods, system, and non-transitory processor-readable storage medium for a source code file association system are provided herein. An example method includes receiving, by a project management tool associated with a software test lifecycle system, a pull request to merge software code changes with a software project repository on an enterprise system. The software testing life cycle system executes a plurality of integration test suites associated with the pull request on at least one test system associated with the enterprise system. The integration test suites are executed to test the software code changes. The project management tool captures the integration test suite output. A source code file association system preprocesses the integration test suite output for input into a machine learning system. The integration test suite output is encoded. The output of the machine learning system identifies at least a portion of source code exercised by the integration test suites.