zoukankan      html  css  js  c++  java
  • vs2012搭建gtest环境

      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根目录,includegtestgtest.h,加入宏定义 _VARIADIC_MAX

      

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

    例如我的拷贝到了E:CODE_LIBgtest下面:

      

      3.设置环境变量

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

      GTEST_HOME    值 E:CODE_LIBgtestinclude

      GTEST_LIB    值 E:CODE_LIBgtestlib

      

      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,欢迎转载,转载未经作者同意必须保留此段声明,并在文章首面明显位置给出原文链接,否则视为侵权 
  • 相关阅读:
    多重网格法简介(Multi Grid)
    数值分析方法库
    离散外微积分(DEC:Discrete Exterior Calculus)基础
    楔积(Wedge Procut)
    牛顿迭代法(Newton's Method)
    四元素还是向量?
    曲率(Curvature)
    共变导数(Covariant Derivative)
    正定矩阵(Positive-definite Matrix)
    散度(Divergence)和旋度(Curl)
  • 原文地址:https://www.cnblogs.com/yangzz/p/5244465.html
Copyright © 2011-2022 走看看