A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch) (by catchorg)

Catch Alternatives

Similar projects and alternatives to Catch

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better Catch alternative or higher similarity.

Catch reviews and mentions

Posts with mentions or reviews of Catch. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-05.
  • How can I check the execution time of a program rendered in SFML?
    3 projects | /r/cpp_questions | 5 Dec 2023 (for unit testing, need to do timing yourself)
  • `DestroyJavaVM()` failing on OpenJ9?
    2 projects | /r/javahelp | 22 Apr 2023
    ```c++ // //
  • How do you use the Catch testing library?
    4 projects | /r/cpp_questions | 9 Apr 2023
    Include(FetchContent) FetchContent_Declare(Catch2 GIT_REPOSITORY GIT_TAG v3.3.2 ) FetchContent_MakeAvailable(Catch2)
    4 projects | /r/cpp_questions | 9 Apr 2023
    set(CATCH_VERSION "" CACHE STRING "") Include(FetchContent) FetchContent_Declare(Catch2 URL${CATCH_VERSION}.tar.gz ) FetchContent_MakeAvailable(Catch2) target_link_libraries( Catch2::Catch2)
  • Trying to add tests for my cmake for catch2 with ctest.
    2 projects | /r/cmake | 27 Feb 2023
    Another possible issue would be the include(Catch) in your root cmakelists.txt . To include Catch there it must be part of your module path. Otherwise you have to include the path to that catch2 cmake file. Here is that file in their repository - . I recon that CMake doesn't know about this file since you call find_package(Catch2 REQUIRED) later in your subdirectory
  • Seeking Improve Advice on my C++ Network Library
    7 projects | /r/cpp | 6 Feb 2023
    Unit test coverage by Catch2 framework.
  • snitch v1.0 -- A lightweight C++20 testing framework
    4 projects | /r/cpp | 16 Jan 2023
    Looks good but currently at least REQUIRE (most likely all the other checks too but I didn't test that) fails to correctly evaluate some expressions, due to fundamental problems with macros. One example is described in this issue of the Catch2 repository.
  • IDE for CPP(leetcode)
    4 projects | /r/cpp_questions | 3 Jan 2023
    However, you can use a unit test framework like GoogleTest or Catch2 whic creates a main() function for you which allows you to run single functions, as long as they have been created through some preprocessor macros. Then you can use a VS Code test adapter like this or this which may let you run a single test by right clicking it directly in VS Code.
  • CPM.cmake to make CMake's FetchContent easier
    4 projects | | 28 Dec 2022
    include(FetchContent) FetchContent_Declare( Catch2 GIT_REPOSITORY GIT_TAG v3.0.0-preview4 ) FetchContent_Declare( fmt GIT_REPOSITORY GIT_TAG 9.1.0 ) FetchContent_Declare( scnlib GIT_REPOSITORY GIT_TAG v1.1.2 ) FetchContent_MakeAvailable(Catch2 fmt scnlib)
  • New to C++
    2 projects | /r/cpp | 20 Dec 2022
    Make sure you write unit tests, I use gtest but catch2 is also good.
  • A note from our sponsor - Onboard AI | 29 Feb 2024
    Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at Learn more →


Basic Catch repo stats
8 days ago
The modern API for authentication & user identity.
The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.