Centos7 C++ 安装使用googletest单元测试


废话不多说,直接开始吧。

  • 环境说明
    • 系统环境:centos7.0
    • g++ 版本:
      • g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
      • 查看方法: g++ -version,升级方法 yum -y install g++
      • 由于最新的google test 有使用的是C++11+的函数,故而g++版本不能太低
    • cmake安装: yum -y install cmake
    • 下载 google test 安装包:https://github.com/google/googletest 
  • 安装步骤(依次执行)
    • mv googletest-master.zip  /home/software/;cd /home/software/
    • unzip googletest-master.zip
    • cd googletest-master
    • cmake ./
      • 如果出错,可以查看cmake的版本是否过低,通过yum 方式或者手动安装cmake,cmake的安装包下载地址:https://cmake.org/
    • make 
      • 在安装过程中如果出错,检查环境的C++版本是否过低,若yum不能成功升级,可以选择手动安装(自行安装,此处不过多阐述)
    • 安装成功后,在./lib/目录下会生成:

      libgmock.a libgmock_main.a libgtest.a libgtest_main.a

    •  cp -r -v ./lib* /usr/lib/
    • mkdir /usr/include/gtest; cp -r -v  /home/software/googletest-master/googletest/include/gtest/* /usr/include/gtest/
    • 到此安装基本完成,接下去就是简单使用说明了
  • 使用说明
    • 写一个小的cpp文件
      •   

        /*
        * alarm_test.cpp
        *
        * Created on: 2019年9月17日
        * Author: zhiyulinfeng
        */
        #include <stdio.h>
        #include <stdlib.h>
        #include <gtest/gtest.h>
        TEST(COutputPopLimitStrategyTest,PositiveNos){
        EXPECT_EQ(true,true);
        }
        int main(int argc,char *argv[]){
        ::testing::InitGoogleTest(&argc,argv);

        return RUN_ALL_TESTS();;

    • 编译:g++ -std=c++11 alarm_test.cpp -lpthread /usr/lib/libgtest.a -o  alarm_test
      • 注意:加上-lpthread 因为在google test 内部用使用到线程,否则会报错
      • 注意2:千万记得加上 -std=c++11,环境问题比较纠结
    • 看下结果
      •   

         

         是不是很简单呢?感谢google,有了这个单元测试,妈妈再也不用担心我的程序会croe了。

  • PS: 纯个人积累记录分享,未写清楚的可以留言和我交流。

笔者环境:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM