结合cmake使用googletest

1.安装googletest

  1.     在https://github.com/google/googletest/releases下载源代码压缩包。
  2. cd googletest
  3. mkdir build;cd build
  4. cmake -DBUILD_SHARED_LIBS=ON -Dgtest_build_samples=ON ..
  5. make
  6. make install

 

2.验证安装是否成功

  1. cd build/googletest
  2. ./sample1_unittest
  3. 输出
    Run this program with --check_for_leaks to enable custom leak checking in the tests.
    [==========] Running 2 tests from 1 test suite.
    [----------] Global test environment set-up.
    [----------] 2 tests from ListenersTest
    [ RUN      ] ListenersTest.DoesNotLeak
    [       OK ] ListenersTest.DoesNotLeak (0 ms)
    [ RUN      ] ListenersTest.LeaksWater
    [       OK ] ListenersTest.LeaksWater (0 ms)
    [----------] 2 tests from ListenersTest (0 ms total)
    
    [----------] Global test environment tear-down
    [==========] 2 tests from 1 test suite ran. (0 ms total)
    [  PASSED  ] 2 tests.
    

     

  4. 检查/usr/local/include 包含了GTest、GMock两个文件夹
  5. 检查/usr/local/lib包含四个库文件
    /usr/local/lib/libgmock_main.so  /usr/local/lib/libgtest_main.so
    /usr/local/lib/libgmock.so       /usr/local/lib/libgtest.so
    

     

 

3.使用

usegtest.cpp

#include <gtest/gtest.h>

int add(int a, int b) { return a + b; }
TEST(testCase, test0) { EXPECT_EQ(add(2, 3), 5); }
int main(int argc, char **argv)
{
    testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

 CMakeLists.txt

cmake_minimum_required(VERSION 2.4)
project(useso)


add_definitions(-std=c++11)

# 查找 GTest 库
find_package(GTest REQUIRED)
# GTest 的头文件
include_directories(${GTEST_INCLUDE_DIRS})
# 显示GTest路径
MESSAGE(STATUS "GTEST_INCLUDE_DIRS" ${GTEST_INCLUDE_DIRS})


# 生成可执行的文件
add_executable(ugtest usegtest.cpp)

target_link_libraries(ugtest ${GTEST_BOTH_LIBRARIES} pthread)

输出

[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from testCase
[ RUN      ] testCase.test0
[       OK ] testCase.test0 (0 ms)
[----------] 1 test from testCase (0 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (0 ms total)
[  PASSED  ] 1 test.

 

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值