Tripartite Graph Test Case Generation for Engineering Programs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Generating and optimizing test cases for engineering programs is a labor-intensive and time-consuming process, especially when dealing with complex industrial applications, as manual creation requires considering numerous code lines and flow paths, making it difficult to ensure comprehensive coverage.
Innovation Solution
A method utilizing tripartite graphs and machine learning algorithms, specifically graph convolution neural networks, to automatically generate and optimize test cases by defining constraints and interdependencies, reducing manual intervention and improving efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual test case generation is used to ensure comprehensive flow path coverage, then test case quality and coverage are improved, but time consumption and labor intensity increase significantly
Solution Approach 1:
The patent replaces the manual mechanical process of test case generation with an automated computer-based system that uses natural language processing and graph theory algorithms to automatically generate, execute, and optimize test cases, thereby reducing time consumption while maintaining comprehensive coverage
Solution Approach 2:
The system enables self-service test case generation by automatically analyzing the engineering program's control flow, identifying all possible execution paths, and generating appropriate test cases without requiring manual intervention, thus improving efficiency while ensuring thorough coverage
2Reliability
If manual test case generation is used to cover all flow paths, then test case comprehensiveness is improved, but device complexity and difficulty of operation increase
Solution Approach 1:
The patent replaces complex manual analysis processes with automated computational algorithms that systematically analyze control flow graphs, eliminating the need for testers to manually trace through thousands of lines of code and complex flow paths
Solution Approach 2:
The system introduces an intermediary automated processing layer that translates the engineering program into a control flow graph representation, then automatically generates test cases based on graph analysis, simplifying the overall process while ensuring comprehensiveness
3Reliability
If more test cases are generated to cover all flow paths, then test case coverage is improved, but the number of test cases and processing complexity increase
Solution Approach 1:
The patent dynamically adjusts test case parameters and optimization criteria based on the analyzed control flow graph, automatically determining the optimal set of test cases that maximize coverage while minimizing the total number of test cases required
Solution Approach 2:
The system incorporates feedback mechanisms that evaluate the effectiveness of generated test cases and iteratively optimize the test suite, removing redundant cases and refining coverage to achieve maximum efficiency
Data Source
AI summary
A method and system for generating and optimizing test cases for an engineering program based on a constraint satisfaction problem is provided. In one embodiment, the method includes generating a plurality of tripartite graphs for the engineering program. Each of the generated plurality of tripartite graphs include a constraint satisfaction problem associated with a specific code statement of the plurality of code statements. Furthermore, the method includes generating a plurality of test cases for the engineering program based on the plurality of tripartite graphs such that the generated plurality of test cases are limited by the generated test case constraints. Moreover, the method includes optimizing the generated plurality of test cases based on an analysis of the engineering program.


