Writing unit tests in C++ has never been easier and faster.
by Viktor Kirilov
From the article:
The main 4 developments are:
- moved to C++11 => greatly simplified the codebase
- thread-safety => asserts and logging utilities can be used in multiple threads spawned from a single test case without race conditions (thread sanitizer tested) - see example
- given that doctest is extremely light on compile times and is meant to be used for tests side-by-side with the production code - added the ability for asserts to be used outside of a testing context (as a general purpose assert library) - example
- a complete overhaul of the internals of the framework (moving from printf-style logging to streams and changing internal structures) to allow for easier future development (including a reporter interface - work in progress)