Mintest is a project mainly written in C, it's free.
mini test unit for C
MINTEST mintest;
int test_succeed() { int i = 0; mt_assert(i == 0, "should be succeed i=%d", i); return 0; }
int test_fail() { int i = 0; mt_assert(i == 1, "should be fail i=%d", i); return 0; }
void test_all() { mt_run_test(test_succeed); mt_run_test(test_fail); }
int main() { test_all(); mt_result(); return 0; }
Assertion faild: test/mintest_test.c:17 (i == 1) should be fail i=0
2 tests, 2 assertions, 1 failers