Method and apparatus for test generation from hybrid diagrams with combined data flow and statechart notation
First Claim
1. A method for generating tests, comprising:
- initializing a test generator;
inputting a diagram representing requirements for a system-performing device comprising a plurality of nodes, including a plurality of embedded nodes, and a plurality of arcs, each arc connecting one or more of the plurality of nodes, and wherein each node in the plurality of nodes belongs to a primary semantic notation except for the plurality of embedded nodes, wherein each embedded node in the plurality of embedded nodes comprises at least one sub-diagram belonging to a secondary semantic notation that is not the same as the primary semantic notation;
propagating type and range information (TRI) through the diagram and determining a plurality of test-generation templates for each node in the plurality of the nodes using a propagation method, wherein TRI is propagated and test-generation templates generated based on the primary semantic notation for each node in the plurality of nodes except for the plurality of embedded nodes, and wherein the TRI is propagated and test-generation templates for each embedded node in the plurality of embedded nodes are generated based on the semantic notation of the at least one sub-diagram; and
generating tests for the diagram based on the plurality of test-generation templates.
1 Assignment
0 Petitions
Accused Products
Abstract
A test generator and methods for generating tests from a hybrid diagram are provided. A hybrid diagram is a diagram that primarily uses one higher-level semantic notation with portions utilizing one or more secondary higher-level semantic notations. Example higher-level semantic notations are statechart notation and data-flow notation. A test generator processes the hybrid diagram without reducing the higher-level semantic constructs to lower-level semantic constructs. The test generator generates test-generation templates as needed based on the higher-level semantic model used in the diagram. The test generator uses the test-generation templates to generate tests for a system-performing device specified by the diagram. The generated tests may be executed automatically by a test driver or manually by a human tester.
77 Citations
20 Claims
-
1. A method for generating tests, comprising:
-
initializing a test generator; inputting a diagram representing requirements for a system-performing device comprising a plurality of nodes, including a plurality of embedded nodes, and a plurality of arcs, each arc connecting one or more of the plurality of nodes, and wherein each node in the plurality of nodes belongs to a primary semantic notation except for the plurality of embedded nodes, wherein each embedded node in the plurality of embedded nodes comprises at least one sub-diagram belonging to a secondary semantic notation that is not the same as the primary semantic notation; propagating type and range information (TRI) through the diagram and determining a plurality of test-generation templates for each node in the plurality of the nodes using a propagation method, wherein TRI is propagated and test-generation templates generated based on the primary semantic notation for each node in the plurality of nodes except for the plurality of embedded nodes, and wherein the TRI is propagated and test-generation templates for each embedded node in the plurality of embedded nodes are generated based on the semantic notation of the at least one sub-diagram; and generating tests for the diagram based on the plurality of test-generation templates. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for generating tests representing requirements for a system-performing device from a diagram comprising a plurality of nodes, including a plurality of embedded nodes, and a plurality of arcs, each arc connecting one or more of the plurality of nodes, wherein each node in the plurality of nodes belongs to a primary semantic notation except for the plurality of embedded nodes, and wherein each embedded node in the plurality of embedded nodes comprises at least one sub-diagram belonging to a secondary semantic notation that is not the same as the primary semantic notation, the method comprising:
-
receiving a plurality of test-generation templates into a test-generation-template data structure, each test-generation template representing an associated node of the diagram; selecting a test-generation template from the test-generation-template data structure and an associated node for the test-generation template; updating the test-generation-template data structure based on the selected test-generation template; projecting inputs up-stream along a first path from the associated node to a plurality of affectable input points based on the semantic notation of nodes in the first path; propagating expected outputs down-stream along a second path from the associated node to a plurality of measurable observation points based on the semantic notation of nodes in the second path; generating a test based on the projected inputs and propagated outputs; and determining that another test-generation template in the plurality of test-generation templates is to be processed based on the test-generation-template data structure. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A test generator, comprising:
-
a computer processor; data storage; machine-language instructions stored in the data storage and executable by the computer processor to perform functions including; initializing the test generator, inputting a diagram representing requirements for a system-performing device comprising a plurality of nodes, including a plurality of embedded nodes, and a plurality of arcs, each arc connecting one or more of the plurality of nodes, wherein each node in the plurality of nodes belongs to a primary semantic notation except for the plurality of embedded nodes, and wherein each embedded node in the plurality of embedded nodes comprises at least one sub-diagram belonging to a secondary semantic notation that is not the same as the primary semantic notation propagating type and range information (TRI) through each node in the plurality of nodes based on a semantic notation used by the node, determining a plurality of test-generation templates for each node in the plurality of nodes based on the semantic notation used by the node, and generating tests for the diagram based on the plurality of test-generation templates. - View Dependent Claims (18, 19, 20)
-
Specification