Claims
- 1. A method for test generation with a plurality of constraints on at least one data structure, the at least one data structure having at least one possible value, the method comprising:analyzing the plurality of constraints to determine an internal logic order for a sequence of constraints, each of the plurality of constraints being of a form such that the at least one possible value is selected from a non-random set containing at least one value, said internal logic order being determined according to an ability to restrict a range of potential values for said non-random set for each of the plurality of constraints after applying a previous constraint in said sequence of constraints; and determining each of the plurality of constraints for the at least one data structure of the model according to said sequence of constraints.
- 2. The method of claim 1, wherein at least one constraint of the plurality of constraints is a flexible constraint.
- 3. The method of claim 2, wherein said range of potential values includes a plurality of values.
- 4. The method of claim 2, wherein the at least one data structure of the model is an object including at least one data element and at least one function for operating on said at least one data element.
- 5. The method of claim 4, wherein said object further includes at least one internal constraint being internal to said object for constraining said at least one data element of said object, and applying said constraint to said object includes:applying said at least one internal constraint to said at least one data element of said object; and applying said constraint to said at least one data element of said object, such that a non-random set of at least one value for said at least one data element of said object is first determined according to said internal constraint before being determined according to said constraint.
- 6. The method of claim 2, wherein the at least one data structure of the model is a list of a plurality of objects.
- 7. The method of claim 6, wherein at least one of said plurality of objects in said list further includes at least one internal constraint being internal to said at least one of said plurality of objects for constraining said at least one data element of said at least one of said plurality of objects, and applying said constraint to said list of said plurality of objects includes:applying said at least one internal constraint to said at least one data element of said at least one of said plurality of objects; applying said constraint to said at least one data element of said at least one of said plurality of objects, such that if said internal constraint is present, a non-random set of at least one value for said at least one data element of said at least one of said plurality of objects is first determined according to said internal constraint before being determined according to said constraint; and repeating at least said applying said constraint to said at least one data element of said at least one of said plurality of objects for substantially all of said plurality of objects.
- 8. The method of claim 2, wherein the at least one data structure of the model is a list of a plurality of scalars.
- 9. The method of claim 8, wherein the step of applying said constraint to said list of said plurality of scalars includes the step of sequentially applying said constraint to each of said plurality of scalars in said list.
- 10. The method of claim 2, wherein said range of potential values includes a single value.
- 11. The method of claim 1, wherein the step of analyzing the plurality of constraints includes identifying at least one of the plurality of constraints for being determined after at least one constraint is applied to the at least one data structure, such that at least a portion of the test generation is performed before said at least one constraint is determined.
- 12. The method of claim 1, wherein the plurality of constraints are analyzed according to a presentation order, said presentation order being different from said internal logic order.
- 13. A method for test generation on at least one data structure, the at least one data structure having at least one possible value, the method comprising:providing a plurality of constraints on the at least one data structure for the test generation, wherein each constraint is capable of being bi-directional; analyzing said plurality of constraints to determine an internal logic order for a sequence of constraints, each of said plurality of constraints being of a form such that the at least one possible value is selected from a non-random set containing at least one value, said internal logic order being determined according to an ability to restrict a range of potential values for said non-random set for each of said plurality of constraints after applying a previous constraint in said sequence of constraints; and determining each of said plurality of constraints for the at least one data structure of the model according to said sequence of constraints.
- 14. The method of claim 13, wherein said plurality of constraints includes at least one flexible constraint.
- 15. The method of claim 14, wherein said providing said plurality of constraints further comprises defining each constraint according to at least one data structure for said constraint.
Parent Case Info
This is a Continuation Application of U.S. patent application Ser. No. 09/259,276, filed on Mar. 1, 1999, which is patented U.S. Pat. No. 6,219,809 and which is hereby incorporated by reference as if fully set forth herein.
US Referenced Citations (5)
Number |
Name |
Date |
Kind |
5202889 |
Aharon et al. |
Apr 1993 |
A |
5657256 |
Swanson et al. |
Aug 1997 |
A |
5703789 |
Beausang et al. |
Dec 1997 |
A |
5781432 |
Keeler et al. |
Jul 1998 |
A |
6219809 |
Noy |
Apr 2001 |
B1 |
Continuations (1)
|
Number |
Date |
Country |
Parent |
09/259276 |
Mar 1999 |
US |
Child |
09/823970 |
|
US |