gtest是google提供的一个非常强大的单元测试工具,下载地址:https://code.google.com/p/googletest

我下载的是gtest-1.6.0.拷贝到Centos系统上面。参考:http://blog.csdn.net/butterflydog/article/details/7005045

配置过程如下:

1、解压gtest-1.6.0

2、查看文件内容,找到make文件,进行make,生成一个测试程序,包含gtest_main.a文件

3、测试程序运行如下:

4、新建一个文件夹,gtest_program,将gtest-1.6.0中的include文件拷过来。

5、在gtest_program中新建一个lib文件夹,将gtest-1.60中的make文件夹中新生成的gtest_main.a文件拷贝过来。

6、编写Makefile,一定要记得修改GTEST_DIR为自己的路径名。如下:

 # Points to the root of Google Test, relative to where this file is.
# Remember to tweak this if you move this file.
GTEST_DIR = /home/anker/gtest_program # Where to find user code.
USER_DIR = ./ # Flags passed to the preprocessor.
CPPFLAGS += -I$(GTEST_DIR)/include # Flags passed to the C++ compiler.
CXXFLAGS += -g -Wall -Wextra # All Google Test headers. Usually you shouldn't change this
# definition.
GTEST_HEADERS = $(GTEST_DIR)/include/gtest/*.h \
$(GTEST_DIR)/include/gtest/internal/*.h FINALOBJS = $(patsubst ./%.cpp, ./%.o, $(wildcard ./*.cpp))
FINALOBJS += $(patsubst ./%.cc, ./%.o, $(wildcard ./*.cc)) MODULE=Sample TEST=${MODULE}UnitTest
#if there are any modules that you mocked, add their obj name to MOCKOBJS, so
#they can be rebuilt
#MOCKOBJS += $(TEST) $(BASEDIR)
# House-keeping build targets. all : $(TEST) $(TEST): MOCK $(FINALOBJS)
$(CXX) $(CXXFLAGS) -lpthread $(FINALOBJS) -o $@ $(GTEST_DIR)/lib/gtest_main.a %.o:%.cpp
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -g -c -o $@ {1}lt;
MOCK:
rm -rf $(MOCKOBJS)
clean:
rm -f $(FINALOBJS) $(TEST)

7、测试结果如下:

参考:http://www.cnblogs.com/chutianyao/archive/2012/12/01.html

Centos下配置单元测试工具gtest的更多相关文章

  1. Centos下配置php环境

    Centos下配置php环境   目录[-] 环境: GD2 2 安装PHP 5.2.14(FastCGI模式) 1)编译安装PHP 5.2.14所需的支持库: 2)编译安装MySQL 5.5.3-m ...

  2. centos下配置gitosis服务器遇到的困难

    这篇博客主要讲的是在centos下配置gitosis遇到的问题. 背景:centos7.2 64 :gitosis2.0 1.困难1 1)产生的问题及原因.gitosis没有安装成功,没有出现fini ...

  3. CentOS下配置防火墙 配置nat转发服务

    CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/sysconfig/network   这里可以更改主机 ...

  4. CentOS下配置jdk

    CentOS下配置jdk 1.在jdk官网上下载最新版本的jdk 2.将jdk放到相应的位置,使用如下命令来解压. .0_181 /opt/data/ tar -zxf jdk-8u181-linux ...

  5. CentOS下配置iptables防火墙 linux NAT(iptables)配置

    CentOS下配置防火墙 配置nat转发服务CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/syscon ...

  6. CentOS下配置LVM和RAID

    1.CentOS配置LVM http://www.cnblogs.com/mchina/p/linux-centos-logical-volume-manager-lvm.html http://ww ...

  7. CentOS下配置SS5(SOCKS5)代理服务器

    方案:使用开源的SS5( Socks Server 5 ) 官网:http://ss5.sourceforge.net/ (点击左侧的Software在右侧的Server处进入下载地址) CentOs ...

  8. centos下配置gitosis服务器

    背景: 一台windows电脑,Xshell可以登录centos服务器(centos7.2 64位,有root用户权限),windows电脑已经安装好git和tortoies 在windows下下载和 ...

  9. CentOS下配置多个Tomcat同时运行 本篇文章来源于 Linux公社网站(www.linuxidc.com)

    原文地址:http://blog.csdn.net/tjcyjd/article/details/46553361 版权声明:本文为博主原创文章,未经博主允许不得转载. 同一服务器部署多个tomcat ...

随机推荐

  1. PHP常用设计模式

    1.单例模式指在整个应用中只有一个对象实例的设计模式 class Single { public $rand; static private $instance; // 类直接调用 final pri ...

  2. The STM32F746G-DISCO discovery board -- MBED

    https://developer.mbed.org/platforms/ST-Discovery-F746NG/ Microcontroller features STM32F46NGH6 in T ...

  3. how to use fiddler and wireshark to decrypt ssl

    原文地址: http://security14.blogspot.jp/2010/07/how-to-use-fiddler-and-wireshark-to.html Requirements2 C ...

  4. 简述 IOS中的LazyLoad思想

    Lazy,谁懒?当然是计算机偷懒.通常用法,你有一个NSArray的property,但是你不在初始化方法里为其alloc/init,它就只是一个指针,不会占用内存.然后你写了此property的访问 ...

  5. Control reaches end of non-void function 犯过最傻的错误

    之所以会报“Control reaches end of non-void function ”的警告,时因为方法名中缺少返回类型.正确的写法如下: +(void)setMobile:(NSStrin ...

  6. C#编程(十三)----------方法重载

    C#支持方法的重载---方法的几个版本有不同的签名即可(即,方法名相同,但是参数个数和/或类型不同).为了冲在方法,只需要声明同名单参数个数或类型不同的方法即可. 注意:两个方法不能仅在返回类型上有区 ...

  7. 解决ADB server didn't ACK问题

    ADB server didn't ACK | 浏览:7400 | 更新:2013-08-11 21:19 1 2 3 4 5 6 7 分步阅读 当我们通过eclipse开发Android应用时,会连 ...

  8. 基于QT和OpenCV的人脸检測识别系统(1)

    人脸识别分为两大步骤 1.人脸检測 这个是首要实现的.你得实现人脸显示的时候把人脸框出来,当然算法非常多,另一些人眼检測鼻子检測什么的 主要用的是这个 const char *faceCascadeF ...

  9. ASP.NET MVC:如何提供 Controller 继承体系使用的 ModelBinder?

    背景 Mvc 提供了一种可扩展的模型绑定机制,具体来说就是:将客户端传递的参数按照一定的策略绑定到 action 的参数上,这带来的直接好处就是让 action 的参数支持强类型.一般来说我们有如下方 ...

  10. Unity Shader-渲染队列,ZTest,ZWrite,Early-Z

    在渲染阶段,引擎所做的工作是把所有场景中的对象按照一定的策略(顺序)进行渲染.最早的是画家算法,顾名思义,就是像画家画画一样,先画后面的物体,如果前面还有物体,那么就用前面的物体把物体覆盖掉,不过这种 ...