FakeIt VS catch2-with-gmock

Compare FakeIt vs catch2-with-gmock and see what are their differences.


C++ mocking made easy. A simple yet very expressive, headers only library for c++ mocking. (by eranpeer)


Exmaple of using Catch2 with GMock (by matepek)
Our great sponsors
  • Mergify - Updating dependencies is time-consuming.
  • SonarCloud - Analyze your C and C++ projects with just one click.
  • InfluxDB - Collect and Analyze Billions of Data Points in Real Time
FakeIt catch2-with-gmock
2 1
1,141 13
- -
0.0 10.0
28 days ago over 3 years ago
C++ C++
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of FakeIt. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-19.
  • Unit testing and mocking for c++
    6 projects | /r/cpp | 19 Oct 2021
    Coming from googletest/googlemock, I found FakeIt to be a rabbit hole. In particular, I recall not being able to match const reference parameters or something strange like that -- the matcher values would dangle I think. Ah yes, this issue here: https://github.com/eranpeer/FakeIt/issues/108.


Posts with mentions or reviews of catch2-with-gmock. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-10-19.
  • Unit testing and mocking for c++
    6 projects | /r/cpp | 19 Oct 2021
    I'm answering a question asked not from me. I've used both Google.Test and Catch2 and latter one feels much nicer. Sections from Catch2 just do not exist in other frameworks however they are super powerful. It has drawbacks like not having out of the box macros for setting up stuff once for all the runs of a test before a test is run with various parameters. See https://github.com/catchorg/Catch2/issues/1602 Integrating gmock should be easy as I've seen but not flawless. As I remember some extra work needs to be done so expectations are verified at end of sections? See https://github.com/matepek/catch2-with-gmock Google.Test doesn't support (or at least didn't when I last looked) some combination of type and value generators. Other than that, the slightly uglier syntax and lack of sections (which is pretty big) it's all good. Especially with gmock all integrated and delivered to you in one package.

What are some alternatives?

When comparing FakeIt and catch2-with-gmock you can also consider the following projects:

trompeloeil - Header only C++14 mocking framework


gtest_sample - A very simple project using GTest

Catch - 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)

doctest - The fastest feature-rich C++11/14/17/20/23 single-header testing framework

upp11 - C++11 lightweight single header unit test framework

KmTest - Kernel-mode C++ unit testing framework in BDD-style

Minctest - tiny unit testing framework for ANSI C

ut - UT: C++20 μ(micro)/Unit Testing Framework