Automated Test Suite Recommendation Using Evolutionary Algorithms

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current test suite optimization systems require user intervention and fail to utilize historical data effectively, leading to inefficient and variable results in identifying relevant test cases for minor code changes, resulting in a cumbersome and time-consuming testing process.

Innovation Solution

An automated test suite recommendation system that collects inputs and identifies matching test cases using historical data, providing an optimized test suite recommendation based on file and feature changes, employing database mining tools and algorithms to streamline the process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all test cases are executed to ensure overall stability, then product stability is improved, but testing time and resources increase significantly

Engineering Contradiction:
Improveproduct stabilityVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The test suite is segmented into multiple test cases that can be independently selected and executed. The system divides the complete test suite into discrete test cases, each associated with specific files or features, allowing selective execution based on actual changes rather than executing the entire suite.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of executing all test cases (excessive action), the system performs partial action by selecting and executing only the subset of test cases that are relevant to the current code changes. This is achieved by analyzing which test cases are associated with modified files or features.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If test suite optimization is performed manually, then test case identification accuracy is improved, but user intervention and processing time increase

Engineering Contradiction:
Improvetest case identification accuracyVSAvoiduser intervention requirement
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system performs self-service by automatically analyzing code changes, identifying affected files, and selecting relevant test cases without requiring manual user intervention. The automated system uses algorithms to process change information and generate test suite recommendations independently.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The manual mechanical process of reviewing and selecting test cases is replaced by an automated computational system that uses algorithms to analyze code changes and identify relevant test cases. This substitution eliminates manual labor while maintaining or improving identification accuracy through systematic analysis.

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

3Measurement precision

If existing test optimization systems are used, then test case selection is improved, but historical data utilization is insufficient

Engineering Contradiction:
Improvetest case selection qualityVSAvoidhistorical data utilization
Core Design Contradiction:
Measurement precisionVSLoss of information

Solution Approach 1:

The system performs preliminary action by collecting and storing historical data about previous test cases, code changes, and their outcomes before the current testing task. This historical information is prepared in advance and made available for analysis when new test suite optimization is needed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback from historical test execution results to improve future test case selections. By analyzing past outcomes, the system learns which test cases were most effective for similar changes, and this feedback is incorporated into the automated selection process for ongoing optimization.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9471470B2Automatically recommending test suite from historical data based on randomized evolutionary techniques
Publication Date: 2016.10.18 HCL TECH LTD
  • US9471470B2 patent drawing
  • US9471470B2 patent drawing
  • US9471470B2 patent drawing

AI summary

Disclosed herein are a system and a method for automated test suite optimization and recommendation, based on historical data, using randomized evolutionary techniques. The system analyzes historical data pertaining to file change pattern and test case execution history to identify test cases that match application being tested. Further, based on the test cases identified, the system generates optimized test suite recommendations to the user.