1. A computer program product comprising computer-usable program code stored on a non-transitory computer-usable storage medium, wherein the computer-usable program code is executable by a data processor to perform the steps of: finding at least one missing case not covered by the rules; identifying tests that occur in the rules; generalizing the at least one missing case into a family of missing cases in terms of the tests that occur in the rules; generalizing the family of missing cases into a missing rule; and generating missing rules with most general conditions, wherein the step of generalizing the at least one missing case into a family of missing cases in terms of the tests that occur in the rules comprises finding a minimal set of tests that cover the family of missing cases but do not cover any of the cases covered by the rules, wherein the step of finding the minimal set of tests that cover the family of missing cases but do not cover any of the cases covered by the rules comprises: ordering the tests according to broadest coverage of an object; and stepping through the ordered tests and verifying if the selected test covers any case covered by the rules.