gtest安装与使用示例

来源:互联网 发布:java设置环境变量win10 编辑:程序博客网 时间:2024/06/05 12:43

  • 关于gtest的介绍这里不多说了,具体可以参考官方文档玩转gtest系列

  • 安装环境

CentOS 32-bit  

  • 安装步骤
    1. 从google test官方网站上下载gtest-1.6.0源码包。(源代码目录中的README中有gtest在各种平台的安装说明)
    2. gtest不是传统的unix安装模式(./configure; make; make install)
    3. 进入 ${GTEST_DIR}(这个是gtest解压后的目录,我的是~/Open/gtest-1.6.0)
      • g++ -I./include -I./ -c ./src/gtest-all.cc
      • ar -rv libgtest.a gtest-all.o
  • 验证是否成功
      • cd ${GTEST_DIR}/make 会发现这个文件下有个Makefile
      • make 会生成一些sample执行文件 
      • 选一个执行,./sample1_unittest,如果看到典型的gtest输出log就说明成功了

  • 使用示例
    1. 安装与验证完毕之后还不能直接使用
      • ${GTEST_DIR}/include/gtest这个目录拷贝到/usr/local/include
      • ${GTEST_DIR}/libgtest.a拷贝到/usr/local/lib
      • 这样就可以直接使用头文件<gtest/gtest.h>和静态库libgtest.a
    2. 创建~/test目录,然后将${GTEST_DIR}/samples里面的sample1.cc sample1.h sample1_unittest.cc,拷贝过来。
    3. 写一个Test.cc,代码如下
      #include "smaple1.h"#include <gtest/gtest.h>int main(int argc, char **argv){    testing::InitGoogleTest(&argc,argv);    RUN_ALL_TESTS():    return 0;}

    4. 编译过程如下
      • $g++ -o sample1.o -c sample1.cc
      • $g++ -o sample1_unittest.o -c sample1_unittest.cc
      • $g++ -o Test.o -c Test.cc
      • $g++ -o main sample1.o sample1_unittest.o Test.o -lgtest -lpthread 
      • 由于/usr/local/include被拷贝了gtest目录 /usr/local/lib被拷贝了libgtest.a所以可以
      • 直接使用<gtest/gtest.h>与-lgtest,另外也需要libpthread.a所以要加-lpthread
    5. 最后生成可执行文件main,$./main的输出结果与上面的./sample1_unittest一样的结果。

      0 0
      原创粉丝点击