1. 下载google test
/google/googletest/
下载下来后,我放到了thirdparty目录下。可以看到源代码文件夹里,有适应各种操作系统的编译脚本或者工程文件,比如cmake,make,msvc, msvc文件夹里就是一个支持visual studio的solution文件.
用vs2017打开,如果有需要,visual studio会自动升级我用的是visu studio 2017.同时要手动要Retarget Projects,更新SDK版本到vs2017的版本,不然编译不过。
可以发现里面有几个项目,其中gtest和gtest_main的产出是对google test编写有用的。
2.编译gtest库
编译通过,debug和release都编译一遍,把编译出的,, gtest_main.lib, gtest_maind.lib 都放到gtest根目录的lib文件夹下(lib和include位于同一级)。
3.配置工程选项
(1)gtest
右击工程名,点击“属性”,配置工程属性; 展开“在项目属性--> C++-->General-->additional include Directories ”中添加
.\include;.\thirdparty\googletest\googletest\include;.\thirdparty\googletest\googletest\include\gtest\internal;%(AdditionalIncludeDirectories)
展开“C/C++->Code Generation->Runtime library”,在“运行库”中修改为“多线程调试(/MTd)”;(其实你也可以选择动态链接(/MD),前提是你之前编译的gtest也使用了同样是/MD选项)
--> Linker-->General-->additional Library Directories 中添加
.\thirdparty\googletest\googletest\msvc\gtest\Debug\;%(AdditionalLibraryDirectories)
备注:和gtest_maind.lib的区别在于后者已经包含了test运行的main函数,而前者需要在自己实现main,且在main中调用
4. 编写测试用例
5.运行