Selective Test Planning for Shorter Software Test Cycles
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software testing protocols require executing an entire test plan, which is time-consuming and resource-intensive, especially for continuous integration, wasting computing resources and developer time.
Innovation Solution
A system that intelligently selects a subset of tests from a full test plan based on metrics such as changed code and new tests, using a test agent and intelligence server to communicate and execute a reduced test list.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If an entire test plan is executed for each test cycle, then testing completeness is ensured, but test cycle time and computing resource consumption increase significantly
Solution Approach 1:
The test plan is segmented into individual test cases, and only the relevant subset of test cases is executed based on code change analysis. The system divides the full test plan into manageable units and selectively executes only those tests that are necessary for the current integration, rather than executing the entire test plan every time.
Solution Approach 2:
Instead of executing the complete test plan (excessive action), the system performs partial testing by selecting only the necessary test cases based on which code modules were modified. This partial action approach ensures sufficient testing coverage for changed code while avoiding unnecessary execution of tests for unchanged components.
2Reliability
If an entire test plan is executed for each test cycle, then testing completeness is ensured, but computing resource consumption increases
Solution Approach 1:
The test plan is segmented into individual test cases, and only the relevant subset of test cases is executed based on code change analysis. The system divides the full test plan into manageable units and selectively executes only those tests that are necessary for the current integration, rather than executing the entire test plan every time.
Solution Approach 2:
Instead of executing the complete test plan (excessive action), the system performs partial testing by selecting only the necessary test cases based on which code modules were modified. This partial action approach ensures sufficient testing coverage for changed code while avoiding unnecessary execution of tests for unchanged components.
3Loss of time
If a subset of tests is selected based on changed code, then test cycle time is reduced, but test coverage may be insufficient
Solution Approach 1:
The system uses feedback from code change detection to dynamically adjust the test selection. By analyzing which code modules were modified and using this feedback to determine which tests must be executed, the system ensures adequate test coverage for changed code while reducing overall test execution time.
Solution Approach 2:
The system performs preliminary analysis of code changes before executing tests. By pre-determining which tests are necessary based on code modification analysis, the system prepares the test selection in advance, ensuring appropriate test coverage is identified before test execution begins.
Data Source
AI summary
A system that automatically reduces test cycle time to save resources and developer time. The present system selects a subset of tests from a full test plan that should be selected for a particular test cycle, rather than running the entire test plan. The subset of tests is intelligently selected using metrics such as tests associated with changed code and new and modified tests.


