vs2017下搭建gtest LLT环境

来源:互联网 发布:手机淘宝查号网址 编辑:程序博客网 时间:2024/05/16 15:19

1. 下载google test

https://github.com/google/googletest/

下载下来后,我放到了thirdparty目录下。可以看到源代码文件夹里,有适应各种操作系统的编译脚本或者工程文件,比如cmake,make,msvc, msvc文件夹里就是一个支持visual studio的solution文件.

用vs2017打开gtest.sln,如果有需要,visual studio会自动升级我用的是visu studio 2017.同时要手动要Retarget Projects,更新SDK版本到vs2017的版本,不然编译不过。 

可以发现里面有几个项目,其中gtest和gtest_main的产出是对google test编写有用的。

  2.编译gtest库

编译通过,debug和release都编译一遍,把编译出的gtest.lib,gtestd.lib, 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\gtestd.lib;%(AdditionalLibraryDirectories)

 


备注:gtestd.lib和gtest_maind.lib的区别在于后者已经包含了test运行的main函数,而前者需要在自己实现main,且在main中调用


4. 编写测试用例 test.cpp



5.运行