Linux下Googletest安装以及使用详解

Linux下Googletest安装以及使用详解

  • 1 Googletest的安装
    • 1.1创建shell自动下载编译
    • 1.2利用Googletest编写测试案例
    • 1.3移动库文件
    • 1.4编译
    • 1.5链接
  • 2 Googletest的使用
    • 大佬博客

1 Googletest的安装

1.1创建shell自动下载编译

(网速好的话,也可以从github直接下载)

#!/bin/sh
git clone https://gitee.com/mlb810/googletest.git
cd googletest
g++ -isystem googletest/include/ -I googletest/ -isystem googlemock/include/ -I googlemock/ -pthread -c googletest/src/gtest-all.cc
g++ -isystem googletest/include/ -I googletest/ -isystem googlemock/include/ -I googlemock/ -pthread -c googlemock/src/gmock-all.cc
ar -rv libgmock.a gtest-all.o gmock-all.o

1.2利用Googletest编写测试案例

(最最最简单的案例)

//gtest.cpp
#include 
#include "gtest/gtest.h"
using namespace std;


int MAX(int a, int b)
{
     
  return a>b? a:b;
}

TEST(_MAX, MAXTestCase1)
{
     
  ASSERT_EQ(9,MAX(1,9));
}

TEST(_MAX, MAXTestCase2)
{
     
  ASSERT_EQ(1,MAX(1,9));
}


int main(int argc,char* argv[])
{
     
        testing::InitGoogleTest(&argc,argv);
        return RUN_ALL_TESTS();
}

1.3移动库文件

  • 在你的测试案例.cpp文件的同级文件夹中创建lib和inlcude的文件夹
  • 将googletest文件夹下生成的libmock.a文件复制到新创建的lib文件夹
  • 将googletest/googletest/include下的gtest文件夹复制到新创建的include文件夹
  • 将googletest/googlemock/include下的gmock文件夹复制到新创建的include文件夹(如果需要)

1.4编译

(生成.o文件)

g++ -o gtest.o -c gtest.cpp -I./include

1.5链接

(这里总是报错,未解决,libgmock.a总是出错)

g++ -o main *.o -I./include -L./lib -lgmock -lpthread

2 Googletest的使用

大佬博客

你可能感兴趣的:(Linux,linux,googletest)