It must be possible to set a flag so that a call to an unknown predicate throws an error. Given the above there must be a mechanism for raising and handling exceptions. . The test suites A test suite based on the formal specification This suite is designed to be easily expandable. New tests can be added to the files or new files of tests added.
Emphasis is on finding all the solutions to a given goal.
A test suite based on the examples in the documentation of the standard This suite is not as susceptible of expansion. It uses different predicates to test for success, failure and to catch errors. It is organised by clause of the standard.