一、前言
本篇将介绍一些gtest的基本使用,包括下载,安装,编译,建立我们第一个测试Demo工程,以及编写一个最简单的测试案例。
二、下载
如果不记得网址, 直接在google里搜gtest,第一个就是。目前gtest的最新版本为1.3.0,从下列地址可以下载到该最新版本:
http://googletest.googlecode.com/files/gtest-1.3.0.zip
http://googletest.googlecode.com/files/gtest-1.3.0.tar.gz
http://googletest.googlecode.com/files/gtest-1.3.0.tar.bz2
三、编译
下载解压后, 里面有个msvc目录:
编译之后,在msvc里面的Debug或是Release目录里看到编译出来的gtestd.lib或是gtest.lib文件。
VS 2017配置gtest
生成gtest.lib
配置VS项目
生成gtest.lib
MS VC++ 14.0 _MSC_VER = 1900 vs2015 平台是v140
MS VC++ 12.0 _MSC_VER = 1800 vs2013的编译器 平台是v120
VS 2017 的平台也是v140, 需要将gtest在对应的平台下编译出lib, 打开\gtest\msvc\gtest.sln, 编译即可.
配置VS项目
配置包含目录
项目属性页->配置属性->C/C+±>常规->附加包含项目: 加入gtest\inclue的相对目录
配置依赖项
项目属性页->配置属性->链接器->输入->附加依赖项: 加入gtest\Debug\gtestd.lib相对目录
预处理器
_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING
_CRT_SECURE_NO_WARNINGS
代码生成配置
项目属性页->配置属性->C/C+±>代码生成->运行库: 改成 多线程调试(/MTd)
项目属性页->配置属性->C/C+±>代码生成->启用函数级链接: 改成 是(Gy)
“testing::InitGoogleTest(&argc, argv);” :gtest的测试案例允许接收一系列的命令行参数,因此,我们将命令行参数传递给gtest,进行一些初始化操作。gtest的命令行参数非常丰富,在后面我们也会详细了解到。
“RUN_ALL_TESTS()” :运行所有测试案例
OK,一切就绪了,我们直接运行案例试试(一片绿色,非常爽):