单元测试,一直用的是googletest,使用时只需要下载源码编译出库,在测试工程中引用即可,googletest提供了很多宏来让我们很轻松的组织测试用例。而Catch2比googletest使用更简单,源码就一个头文件,使用时只需要将Catch2.hpp引用到工程中即可,基本的测试用例组织方法与googletest相似;对于测试工具,个人认为Catch提供的TEST_CASE+SECTION更简单。
1、googletest
GoogleTest框架开发过程几乎覆盖C++核心知识,是新手锻炼C++开发能力最好的项目!
2、Catch2
3、googletest和Catch2两者的详细比较
Catch2有以下这些优势:
- 简单易用:只需要下载catch.hpp,包含到你的工程就可以了
- 不依赖外部库:只要你可以编译C++11,有C++的标准库就可以了
- 测试case可以分割为sections: 每个setcion都是独立的运行单元
- 提供了BDD式的测试模式:可以使用Given-When-Then section来做BDD测试
- 只用一个核心的assertion宏来做比较。用标准的C++运算符来做比较,但是可以分解表达式,记录表达式等号左侧和右侧的值
- 可以用任何形式的字符串给测试命名,不用担心名字是否合法
4、Qt Test
5、Qt Test学习教程
Qt程序单元测试学习记录 : 上
beondxin.blog.csdn.net/article/det…
Qt程序单元测试学习记录 :中
beondxin.blog.csdn.net/article/det…
Qt程序单元测试学习记录 :下
beondxin.blog.csdn.net/article/det…