blob: b32660bb25c895428406d9033e5a0f4c652766ce (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
Catch stands for C++ Automated Test Cases in Headers and is a
multi-paradigm automated test framework for C++ and Objective-C
(and, maybe, C). It is implemented entirely in a set of header
files, but is packaged up as a single header for extra convenience.
Key features:
- Really easy to get started. Just download catch.hpp,
#include it and you're away.
- No external dependencies. As long as you can compile
C++98 and have a C++ standard library available.
- Write test cases as, self-registering, functions or
methods.
- Divide test cases into sections, each of which is run
in isolation (eliminates the need for fixtures!)
- Use BDD-style Given-When-Then sections as well as
traditional unit test cases.
- Only one core assertion macro for comparisons.
Standard C/C++ operators are used for the comparison -
yet the full expression is decomposed and lhs and rhs
values are logged.
Note: To enable Catch's self-tests, export SELFTEST=yes in the
script's environment. This doesn't affect the binary package that gets
built.
|