极智开发 | 单元自测模块 google gtest 配置

379 阅读2分钟

  一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第8天,点击查看活动详情

欢迎关注我的公众号 [极智视界],获取我的更多笔记分享

  大家好,我是极智视界。本文详细介绍了单元自测模块 google gtest 的安装配置方法。

  gtest 是一个跨平台的 C++ 单元测试框架,提供了丰富的断言、致命、非致命、参数化测试等,能够快速嵌入到工程代码中,完成自动化测试,极大降低测试成本。这个自动测试的模块应用十分广泛,如在 Caffe框架、昇腾 CANN 中均有应用。

1、下载源码

git clone https://github.com/google/googletest

2、源码编译

cd googletest 

cmake CMaakeLists.txt 

make -j32

   编译成功后会在 googletest/lib 下生成 libgtest.a、libgtest_main.a、libgmock.a、libgmock_main.a 四个静态库。

   把生成的静态库和头加入到系统环境中:

cp -r ~/googletest/lib* /usr/local/lib 

cp -r ~/googletet/googletest/include/* /usr/local/include

3、验证测试

  写个简单的代码进行测试。

  mlu_gtest.cpp

#include <gtest/gtest.h> 

int mul(int x, int y) 
{   
	return x * y;
} 

TEST(testCase, test0) 
{   
	EXPECT_EQ(mul(3, 5), 15); 
} 

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

  其中 TEST 宏的作用是创建一个简单测试,它定义了一个测试函数,在这个函数中就可以我们主动的添加一些 C++ 代码,形成 程序输出值 和 真值/真值范围 的校验。

  编译,测试。

g++ mul_gtest.cpp -lgtest -lpthread -o mlu_gtest 

./mlu_gtest

   输出如下信息说明环境正常。

   好了,收工~ 以上分享了单元自测模块 google gtest 配置和使用方法,希望我的分享能对你的学习有一点帮助。


 【公众号传送】

《【经验分享】单元自测模块 google gtest 配置》


logo_show.gif