下面是安装步骤,在此之前,请确保正确安装了cmake(>=3.4)和gcc(>=5.1)。
下载gtest:
https://github.com/google/googletest
或
$ git clone
https://github.com/google/googletest.git
$ cd googletest
$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install
安装好gtest后,写个测试用例测试下。
在项目根目录下编写 CMakeList.txt:
cmake_minimum_required(VERSION 3.4)
project(my_project)
#设置项目名字
# GoogleTest requires at least C++11
set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -g -std=c++11 -Wall”) #设置常用的flag 这里-std=c++11采用C++11标准,
#-g支持gdb,-Wall打印所有信息
find_package(GTest REQUIRED)
#查找gtest包
include_directories(${GTEST_INCLUDE_DIRS})
#包括gtest头文件
add_executable(
mytest
#生成二进制文件名
test.cc
#源文件
)
target_link_libraries(
mytest
${GTEST_BOTH_LIBRARIES})
#添加链接库
enable_testing()
#使能测试
add_test(
Test
#测试名
mytest
)
#关键!添加测试
之后我们编写一个简单的测试文件:
//test.cc
#include <gtest/gtest.h>
#include <numeric>
#include <vector>
TEST(MyTest, Sum){
std::vector<int> vec{1,2,3};
int sum = std::accumulate(vec.begin(), vec.end(),0);
EXPECT_EQ(sum, 6);
}
int main(int argc, char* argv[]){
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}
开始编译和测试
$mkdir build
$cd build
$cmake ..
$make
$make test
然后运行就可以看到测试结果
$./test
Running tests…
Test project /home/duqian.du/gtest/build
Start 1: Test1
1/1 Test #1: Test1 ………………………. Passed 0.00 sec
100% tests passed, 0 tests failed out of 1
Total Test time (real) = 0.00 sec