Integrated automated test case generation for safety-critical software
Abstract
According to some embodiments, system comprises a communication device 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 to receive the model, store the model and generate an intermediate model; a generator computer module to receive the intermediate model, store the intermediate model, generate at least one test case; a memory for storing program instructions; at least one test case generation platform processor, coupled to the memory, and in communication with the translation computer module and the generator computer module, 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.
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. A system comprising:
a communication device 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 to receive the model, store the model and generate an intermediate model;
a generator computer module to receive the intermediate model, store the intermediate model, generate at least one test case;
a memory for storing program instructions;
at least one test case generation platform processor, coupled to the memory, and in communication with the translation computer module and the generator computer module, 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 a type of computation in a computation path extracted from 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,
wherein the intermediate model is reduced to include only a portion of the intermediate model associated with a sub-graph that identifies only elements affecting a test objective;
wherein the intermediate model preserves one or more behaviors per an associated sampling time from the model;
wherein the translation computer module maps one or more computation sequences of the at least one model to one or more computation paths in the intermediate model;
wherein the system further comprises a converter module operative to convert one or more test criteria to one or more test objectives, wherein each test objective is associated with a test objective path;
wherein the one or more test objectives are attached to the intermediate model; and
wherein the computation paths describe model behaviors and the test objectives paths describe test objectives.
2. The system of claim 1 wherein the model is one of a specification model and a design model.
3. The system of claim 1 wherein each requirement includes one or more input variables and one or more output variables.
4. The system of claim 3 wherein the at least one generated test case includes a description of the requirement, a set of input variables, and a set of expected output, wherein the set of expected output is based on the one or more output variables.
5. The system of claim 1 wherein the model type is identified from a plurality of model types, wherein the plurality of model types includes a symbolic variable model type, a real number model type, a nonlinear arithmetic model type and a feedback loop model type.
6. The system of claim 1 wherein the generator computer module is operative to generate a table including one or more path constraints and one or more data based on the computation paths and the test objective paths.
7. The system of claim 1 wherein the generator computer module is operative to select one of a model-checking module, a constraint-solving module and a reachability resolution module to apply to the intermediate model to generate test cases based on the computation type.
8. The system of claim 1 wherein the sub-graph is a multiple entry sub-graph.
9. A method comprising:
receiving one or more requirements associated with a model for test case generation;
transforming the model into an intermediate model by execution of a translation computer module;
identifying a model type associated with the intermediate model based on an analysis of a type of computation in a computation path extracted from the intermediate model by execution of a generator computer module;
selecting a test generation method based on the identified model type by execution of the generator computer module;
generating at least one test case for use in software validation and verification,
wherein the intermediate model is reduced to include only a portion of the intermediate model associated with a sub-graph that identifies only elements affecting a test objective;
wherein the intermediate model preserves one or more behaviors per an associated sampling time from the model;
wherein the translation computer module maps one or more computation sequences of the at least one model to one or more computation paths in the intermediate model;
wherein the method further comprising converting one or more test criteria to one or more test objectives, wherein each test objective is associated with a test objective path;
wherein the one or more test objectives are attached to the intermediate model; and
wherein the computation paths describe model behaviors and the test objectives paths describe test objectives.
10. The method of claim 9 wherein the model type is at least one of a symbolic variable model type, a real number model type, a nonlinear arithmetic model type and a feedback loop model type.
11. The method of claim 9 wherein the model is one of a specification model and a design model.
12. The method of claim 9 further comprising:
selecting one of a model-checking module, a constraint-solving module and a reachability resolution module to apply to the intermediate model to generate test cases based on the computation type.
13. The system of claim 9 wherein selecting the test generation method comprises:
determining whether there is an unsupported arithmetic in the computation path that none of a model-checking module, a constraint-solving module, or a reachability resolution module can support;
if there is no unsupported arithmetic in the computation path then determining whether there is a non-linear arithmetic or real numbers in the computation path;
selecting model-checking method for the test generation method if there is no non-linear arithmetic or real numbers in the computation path;
if there is non-linear arithmetic or real numbers in the computation path then determining whether there are unsupported difference equations in the computation path; and
selecting constant-solving method for the test generation method if there are unsupported difference equations in the computation path else selecting reachability resolution method for the test generation method.Join the waitlist — get patent alerts
Track US10108536B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.