c++ 测试框架gtest的入门

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37847176/article/details/82771111

第一次接触和使用c++的测试框架,在这里记录一下
我是在linux中的clion下使用的
参考资料
http://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html

打算试试google test,简称gtest,首先需要下载这个源码,是开源的
https://github.com/google/googletest/tree/release-1.7.0
我下这个版本的
在这里插入图片描述
需要进入目录 cmake一下,生成静态库文件.a

参考这篇
https://www.jianshu.com/p/1821fc597b25
实现
在这里插入图片描述
不用全部拖进去,只要我们需要的部分就可以了,两个.a是cmake之后的产物,也要加入

按照参考的文章可以实现
cmakelist.txt

cmake_minimum_required(VERSION 3.10)
project(untitled_test)

set(CMAKE_CXX_STANDARD 11)
add_subdirectory(./googletest)
include_directories(./googletest/include)
link_directories(./googletest)
set(LIBRARIES
        gtest
        pthread)

add_executable(untitled_test main.cpp)
target_link_libraries(untitled_test ${LIBRARIES})

main函数

#include "gtest/gtest.h"

int add(int a, int b) {
    return a + b;
}

TEST(test, add) {
EXPECT_EQ(3, add(1, 2));
}

GTEST_API_ int main(int argc, char ** argv) {

    testing::InitGoogleTest(&argc, argv);
    return RUN_ALL_TESTS();
}

最后关于c++的创建对象,有两种方式,一种是从栈中创建,由操作系统进行内存的分配和管理,另一种是从堆中创建,用到new,需要自己delete。

猜你喜欢

转载自blog.csdn.net/m0_37847176/article/details/82771111