Computerized testing of an object to identify one or more call sequences
that give rise to exceptions. A set of potential operations (consisting
of methods and associated parameter values) is automatically generated. A
parameter generator may supply interesting parameter values that may more
likely result in a thrown exception. A number of call sequences is
automatically constructed using the operations in the set of operations
as steps in the sequence. Each call sequence is then executed using a new
instance of the object. If an exception is thrown, a report may be issued
containing information helpful in evaluating whether the exception is
appropriate. This information might include the exception type as well as
the invalid call sequence that gave rise to the thrown exception. The
invalid call sequence may also be minimized to assist the tester in
evaluating the root cause and appropriateness of the exception.