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 steps of the method consisting of: (a) 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; (b) determining each of the plurality of constraints for the at least one data structure of the model according to said sequence of constraints.