我一直在阅读很多关于单元测试和测试驱动开发的文章。
最近也在看java单元测试代码。
然而,我更喜欢在 Qt 中开发。因此,我搜索了“C++ 中的单元测试”,并找到了大量有关 C++ 可用的各种单元测试框架的信息。
但是,我找不到各种框架的可靠比较。
所以我期待 SO 社区来指导我选择什么可能是 C++ 的“最佳”单元测试框架。
此外,如果有人对 Qt 中的 TDD(尤其是使用 Qt-Creator)有具体的评论,那么他们非常受欢迎。
我一直在阅读很多关于单元测试和测试驱动开发的文章。
最近也在看java单元测试代码。
然而,我更喜欢在 Qt 中开发。因此,我搜索了“C++ 中的单元测试”,并找到了大量有关 C++ 可用的各种单元测试框架的信息。
但是,我找不到各种框架的可靠比较。
所以我期待 SO 社区来指导我选择什么可能是 C++ 的“最佳”单元测试框架。
此外,如果有人对 Qt 中的 TDD(尤其是使用 Qt-Creator)有具体的评论,那么他们非常受欢迎。
我会推荐doctest(由我创建)——它是所有流行测试框架中编译时间最轻的。它也是目前最常用的框架Catch的直接竞争对手- 查看常见问题解答中的差异
“xUnit”系列测试框架通常非常可靠(jUnit、NUnit 等)。我自己没有使用过,但是有一个用于 C++ 的 jUnit 端口:
有一个表格比较了所有(?)可从维基百科获得的 C++ 单元测试框架。
还有一个旧的 C++ 单元测试框架比较可用。我不认为它没有更新,所以我把它作为补充提到它,因为它比表格更有争议。它涵盖了 CppUnit、CppUnitLite、Boost.Test、NanoCppUnit、Unit++、CxxTest,尤其是它不包括Google C++ 框架。
如果您想在不弄清楚如何构建库的情况下快速起步,有一个头文件包含解决方案,它支持固定装置(设置和拆卸)、通常的 TEST() {} 和 CHECK_TRUE 等。它还具有内存泄漏检测和性能测试能力。