Automated Integration Test Generation from Unit Tests
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The current Model-Based Development (MBD) process involves separate and independent creation of model unit tests and integration tests, leading to inefficiencies, work repetition, and delayed feedback, with no automation to link individual model unit tests into higher-level integration test cases.
Innovation Solution
A method and system that automatically run unit tests for each model in a system, generate unit test harnesses and cases, and then use these to automatically run integration tests for interfacing models, detecting inconsistent, incomplete, or incorrect data transmission between them.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If model unit tests and integration tests are created as separate and independent activities, then test coverage is comprehensive, but work repetition occurs and feedback is delayed
Solution Approach 1:
The patent merges unit testing and integration testing into a unified automated testing framework. The system automatically generates integration test cases by composing unit test cases, eliminating the need for separate manual integration test creation. This combines the benefits of comprehensive test coverage from both unit and integration testing while improving productivity through automation and elimination of work repetition.
Solution Approach 2:
The system performs preliminary action by automatically generating integration test cases before manual testing activities begin. By pre-composing integration test cases from unit test cases using automated algorithms, the system prepares the integration testing framework in advance, reducing the time and effort required during actual testing execution and providing faster feedback.
2Reliability
If manual testing procedures are used for both unit tests and integration tests, then test creation is thorough, but automation is lacking and feedback is delayed
Solution Approach 1:
The testing system performs self-service by automatically generating integration test cases from unit test cases without requiring manual intervention. The automated composition algorithm independently analyzes unit test cases, identifies relationships between model units, and constructs integration test cases autonomously. This maintains test thoroughness while achieving high automation, eliminating manual repetition and accelerating feedback cycles.
3Reliability
If separate testing activities are conducted for unit tests and integration tests, then testing completeness is achieved, but time consumption increases
Solution Approach 1:
The automated testing framework achieves multi-functionality by serving both unit testing and integration testing purposes through a single unified system. The same automated composition mechanism that generates unit test cases also composes integration test cases from those unit tests, maintaining testing completeness while reducing the time required for separate testing activities.
4Device complexity
If no tool links individual model unit tests to integration test cases, then tool simplicity is maintained, but functionality integration is poor
Solution Approach 1:
The patent introduces an automated composition algorithm as an intermediary between unit test cases and integration test cases. This intermediary component automatically analyzes unit test cases, identifies relationships between model units, and composes integration test cases without requiring complex manual configuration tools. The intermediary maintains relative tool simplicity while achieving high integration capability, bridging the gap between unit and integration testing levels.
Data Source
Figure 1A
Figure 1B
Figure 2
AI summary
A method for automatic generation of integration tests from unit tests includes automatically running, by a processor, a unit test for each model of a plurality of models making-up a system. The method also includes automatically determining, by the processor, integration of unit test cases of interfacing models for one or more groups of interfacing models of the plurality of models. The method additionally includes automatically running, by the processor, an integration test for each group of interfacing models using the unit tests for each model of the interfacing models. The method further includes automatically detecting, by the processor, at least one of inconsistent, incomplete and incorrect data transmitted between the interfacing models for each group of interfacing models.