Getting started with Catch2
Catch2 is a multiparadigm testing framework for C++ and Objective-C. The name Catch2 follows on from Catch, the first version of the framework, which stands for C++ Automated Test Cases in Headers. It enables developers to write tests using either the traditional style of test functions grouped in test cases or the behavior-driven development (BDD) style with given-when-then sections. Tests are self-registered and the framework provides several assertion macros; out of these, two are used the most: one fatal, namely
REQUIRE, and one non-fatal, namely
CHECK. They perform expression decomposition of both the left-hand and right-hand side values, which are logged in case of failure. Unlike its first version, Catch2 no longer supports C++03. For the remaining recipes of this chapter, we will learn how to write unit tests using Catch2.
The Catch2 test framework has a macro-based API. Although you only need to use the supplied macros for...