Automated Test Case Generation for Safety-Critical Software
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional software validation and verification processes are time-consuming and costly, particularly for safety-critical software, often resulting in low structural coverage and long test generation times due to the use of unsuitable test generation methods and manual inspection requirements.
Innovation Solution
An automated system that identifies the type of specification/design model and selects the best-suited test methods or modules for efficient test case generation, using a translation computer module to generate an intermediate model and a generator computer module to produce test cases that satisfy model coverage criteria, thereby reducing manual effort and increasing efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional manual validation and verification processes are used, then test coverage can be achieved, but the process is time-consuming and costly
Solution Approach 1:
The system automatically generates test cases from design models without requiring manual inspection or creation. The automated test case generation system performs the validation and verification work itself, eliminating the need for manual test case creation and execution planning, thereby reducing both time and cost while maintaining comprehensive test coverage.
Solution Approach 2:
The patent replaces manual mechanical processes (human inspectors creating and executing test cases) with an automated computational system. The system uses computer modules to automatically generate, execute, and analyze test cases based on design models, substituting human effort with automated software processes that are faster and more consistent.
2Ease of manufacture
If manual inspection methods are used for test generation, then test cases can be created, but the process requires significant manual effort and time
Solution Approach 1:
The system performs test case generation autonomously without requiring manual inspection or human intervention. The automated system extracts test requirements from design models, generates appropriate test cases, and executes them automatically, eliminating the complex manual processes of test planning, case creation, and execution management.
3Productivity
If unsuitable test generation methods are used, then some tests can be performed, but test coverage remains low
Solution Approach 1:
The system dynamically adjusts test generation parameters and methods based on the specific characteristics of the design model being tested. By analyzing the model structure and automatically selecting appropriate test generation strategies, the system optimizes both the efficiency of test execution and the comprehensiveness of test coverage for each specific software component.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
According to some embodiments, system 1200 comprises a communication device 1220 operative to communicate with a user to obtain one or more requirements associated with a model for a test case generation module; a translation computer module 302 to receive the model, store the model and generate an intermediate model; a generator computer module 314 to receive the intermediate model, store the intermediate model, generate at least one test case; a memory 1230 for storing program instructions; at least one test case generation platform processor 1210, coupled to the memory 1230, and in communication with the translation computer module 302 and the generator computer module 314, operative to execute program instructions to: transform the model into an intermediate model by executing the translation computer module; identify a model type associated with the intermediate model based on an analysis of the intermediate model by executing the generator computer module; select a test generation method based on analysis of the identified model type by executing the generator computer module; generate at least one test case for use in software validation and verification. Numerous other aspects are provided.