Check is a unit testing framework for C. It features a simple interface for defining unit tests, putting little in the way of the developer.
Tests are run in a separate address space, so both assertion failures and code errors that cause segmentation faults or other signals can be caught. Test results are reportable in the following: Subunit, TAP, XML, and a generic logging format.