您的位置:首页 > 其它

vs2012搭建gtest环境

2016-03-05 11:43 162 查看
  1.google test 下载

  官方网站:http://code.google.com/p/googletest/

  大部分时间是无法访问此网站的,提供一个360云盘地址,版本是1.6.0: https://yunpan.cn/OcYJacxhPJAC2y 访问密码 1907

  2.编译lib

  下载完成之后,解压到本地,如下图:

  


  vs2012打开msvc目录下面的gtest.sln工程,工程属性设置界面。

  设置你使用的字符集,我用的是unicode:

  



  指定你使用的运行库,此项请根据自己的需要Debug和Release分开设置

  Debug

  


  Release

  


  设置好属性之后开始编译,此时会报错,"std::tuple": 模板参数太多:

  


  解决方法:

  打开gtest根目录,include\gtest\gtest.h,加入宏定义 _VARIADIC_MAX

  


  分别完成Release(生成的lib为gtest.lib)和Debug(生成的lib为gtestd.lib)的编译,为了方便以后使用,将生成的lib放到一个新的的lib文件夹中,同时拷贝include文件夹,讲这两个文件夹拷贝到自己的库路径下

例如我的拷贝到了E:\CODE_LIB\gtest下面:

  


  3.设置环境变量

  为了方便在不同的电脑上编译,设置两个环境变量

  GTEST_HOME   值 E:\CODE_LIB\gtest\include

  GTEST_LIB    值 E:\CODE_LIB\gtest\lib

  


  4.使用gtest

  新建一个gtestdemo工程,注意指定的运行库要与gtest生成设置的一样,打开设置界面,如下设置:

  设置包含目录和库目录

  


  设置链接附加依赖项

  


  demo代码如下: 

#include "stdafx.h"
#include <gtest/gtest.h>

int Add(int a, int b)
{
return a+b;
}

TEST(AddTest, testdemo)
{
EXPECT_EQ(3, Add(1,3));
EXPECT_EQ(3, Add(5,3));
}

int _tmain(int argc, _TCHAR* argv[])
{
testing::InitGoogleTest(&argc, argv);
RUN_ALL_TESTS();
getchar();
return 0;
}


  运行结果:

  


本文原创发表于 博客园,博主 Just_Us,欢迎转载,转载未经作者同意必须保留此段声明,并在文章首面明显位置给出原文链接,否则视为侵权
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: