|about 1 month ago||about 2 years ago|
|Boost Software License 1.0||MIT License|
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.
Unit testing and mocking for c++
6 projects | reddit.com/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?
FakeIt - C++ mocking made easy. A simple yet very expressive, headers only library for c++ mocking.
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)
upp11 - C++11 lightweight single header unit test framework
Minctest - tiny unit testing framework for ANSI C
doctest - The fastest feature-rich C++11/14/17/20 single-header testing framework
KmTest - Kernel-mode C++ unit testing framework in BDD-style