Skip to content
A modern, C++-native, header-only, test framework for unit-tests, TDD and BDD - using C++98, C++03, C++11, C++14 and later
C++ Python CMake C
Branch: master
Clone or download
Pull request Compare This branch is 1138 commits behind catchorg:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
contrib added PARSE_CATCH_TESTS_ADD_TO_CONFIGURE_DEPENDS option Oct 15, 2017
projects Make Approx::margin inclusive Oct 30, 2017
test_package v1.11.0 Oct 31, 2017
.gitattributes Git Attributes, with control for line-endings Oct 18, 2013
.gitignore Ignore .vs folder Feb 21, 2017
CMakeLists.txt Add test for catchorg#914 (stringify truthy exprs in standard way) May 27, 2017 Create Aug 17, 2017
LICENSE.txt Renamed licence file, license should now be detected by github Mar 20, 2017
appveyor.yml Added Win32 UNICODE wmain support (catchorg#903) May 11, 2017
catch-hand-icon.png Updated artwork Mar 1, 2017
catch-icon-tiny.png Updated artwork Mar 1, 2017
catch-logo-small.png Resized main logo again Mar 1, 2017 v1.11.0 Oct 31, 2017

catch logo

Github Releases Build Status Build status Try online

The latest, single header, version can be downloaded directly using this link

What's the Catch?

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.

How to use it

This documentation comprises these three parts:


Help us out

We're currently running a survey to help us shape the future of Catch. Please take a few moments to fill it out (there's only ten questions).

You can’t perform that action at this time.