C++ Test Framework Catch2 VS GoogleTest

2020-08-06 10:54:32 +08:00
 leimao

哪个和 CMake 还有 Bazel 用起来舒服一些?各自的优缺点又有哪些?

3338 次点击
所在节点    C++
3 条回复
GeruzoniAnsasu
2020-08-06 11:35:04 +08:00
项目里两个都有用到

google test 比较重,功能全,尤其是要 mock 数据时有不少支持特性

catch2 只需要一个头文件,随便复制粘贴一个都能用甚至都无需考虑项目结构和 cmake,随手写一个单测时没有负担(比如你正在写一个 lib 里的小组件想有个 main 函数来 load 一下,用 catch2 甚至比写一个新 loader 程序还快)

推荐无状态的随时重入的代码 catch2,更重业务因果逻辑和时序很复杂的测试上 google test
poringking
2020-08-22 18:57:27 +08:00
catch2 编译太慢了,doctest 速度快很多
leimao
2020-08-22 23:56:03 +08:00
@poringking 只 build 一次,然后所有 test link 就行了,不慢的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/696071

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX