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

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

1)安装gtest工具

2)安装lcov工具

2.使用示例

1)目录结构

【知识整理】makefile gtest gcov(lcov)_第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中,包含的库文件删掉

genhtml --branch-coverage -o result test.info                                     #根据test.info,生成对应的覆盖率报告

备注:lcov在1.10版本后默认关闭分支覆盖率,想要打开,需要加上--rc lcov_branch_coverage=1--branch-coverage,统计分支覆盖率,对于一些判断语句比较复杂的语句,时间可能会比较慢。

4.查看报告

【知识整理】makefile gtest gcov(lcov)_第2张图片

5.何为分支覆盖率

【知识整理】makefile gtest gcov(lcov)_第3张图片

 

你可能感兴趣的:(gtest)