【知识整理】makefile gtest gcov(lcov)

本文介绍了如何利用gtest进行C++单元测试,以及使用lcov生成覆盖率报告。首先,讲解了安装gtest和lcov的基础步骤。接着,展示了项目目录结构和一个简单的测试代码示例。通过makefile执行编译、运行测试和覆盖率统计。在执行过程中,利用lcov的选项排除库文件并生成覆盖率报告。最后,提到了分支覆盖率的概念及其重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.基础安装(安装网上有很多教程,根据机器自行安装即可)

1)安装gtest工具

2)安装lcov工具

2.使用示例

1)目录结构

main:程序入口

ut_test:对branches,calc,function文件夹中的代码行进行单元测试(ut),测试框架为gtest

2)示例代码(源代码和编译执行过程都在github上)

https://github.com/zhlan/demo_app

3.执行过程

make clean      #该命令执行Makefile的清理操作,删除make命令产生的中间文件

make                #该命令执行make操作,根据Makefile的定义,执行编译

./demo_app     #执行生成的可执行程序

lcov -c -d . -o test.info --rc lcov_branch_coverage=1                         #统计执行gcno,gcda文件,生成覆盖率文件test.info

lcov -r test.info "*/usr/*" -o test.info --rc lcov_branch_coverage=1   #将test.info中,包含的库文件删掉

ge

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值