Go to the first, previous, next, last section, table of contents.


4.3 Test Suites (required)

Comprehensive test suites are provided for all code. A test suite is a certificate of correctness. It must convince an aggressive skeptic of the correctness of the implementation. The best way to establish correctness is to verify the behavior of the implementation against an independent implementation. The independent implementation should be so simple that it is plausibly correct. Even the weakest test suite must exercise all functions for a wide range of inputs.

A test suite should run to completion in a reasonable amount of time. It should describe the tests being performed as they are executed, but should not display too much information either, rarely more than a page. It should end by announcing the successful completion of the test or by dumping core via an abort() call or an assert() failure.


Go to the first, previous, next, last section, table of contents.