doctest

“最快的 C++ 测试框架” — 编译速度和运行速度都经过极致优化。API 风格类似 Catch2,但编译时间比 Catch2 快数倍(大量使用前置声明和模板外置技巧)。也可以像 Catch2 一样单头文件。

核心组件

组件说明
TEST_CASE()测试用例定义
SUBCASE()测试分区(等价 Catch2 SECTION)
CHECK() / REQUIRE()表达式断言
CHECK_THROWS()异常断言
DOCTEST_CONFIG_*编译期配置选项
doctest::Context运行配置和命令行解析
doctest::Approx浮点数近似比较

何时使用

  • 对编译时间敏感的大项目
  • 想要 Catch2 风格但不喜欢其编译速度
  • 测试数量极大的项目
  • 需要最低测试框架开销的嵌入式项目

关键特性

编译极快、API 类似 Catch2、单头文件、低开销

相关链接

  • Catch2 — 更丰富的测试语法
  • GoogleTest — 行业标准测试框架
  • (搜索: doctest C++)