1、gcov
Linux下代码覆盖率工具,属于gcc工具集之一,随gcc一起发布,不需要独立安装。
使用gcov -v 可以查看gcov的版本信息,如下:
2、lcov
lcov是gcov的图形化工具,可生成html格式的代码覆盖率报告,提高覆盖率检测结果的可读性。
lcov需要自己下载的开源软件,下载地址如下:
https://sourceforge.net/projects/ltp/files/Coverage%20Analysis/
3、lcov的手动安装
(1)进入到.tar.gz所在的目录;
(2)执行如下命令:tar -zxvf lcov-1.14.tar.gz
==》以lcov-1.14版本安装为例。
(3)cd lcov-1.14
(4)make install
(5)lcov -v //查看版本信息
[root@zxomc lcov-1.14]# lcov -v
lcov: LCOV version 1.14
4、使用gcov的方法
(1)增加编译选项
#coverage--- gcda file ,arcs---gcdo file
CFLAGS+=-fprofile-arcs -ftest-coverage
其中-fprofile-arcs用于生成.gcno文件,-ftest-coverage用于生成.gcda文件
(2)链接时使用:
#ld
LDFLAGS+=-lgcov
(3)gcc编译成功后会生成对应同名的.gcno文件
(4)执行生成的可执行文件后生成同名的.gcda文件
(5)针对特定的源文件,执行gcov命令后生成覆盖率信息文件,即.gcov
如:针对test.c
gcov test.c
则生成test.c.gcov文件,这个就是代码覆盖信息。
5、lcov的使用方法
(1)我们为了更直观的查看代码覆盖率,可以借助lcov(gcov的可视化工具),针对生成的.gcov文件进行改造,生成最终的test.info文件。
在.gcov所在的目录下执行如下命令:
lcov -c -d . -o 'test.info' -b .
此命令执行成功后会生成对应的info文件(文件名可自定义)。
(2)通过genhtml工具(lcov工具集中包含)生成result文件,其中包含index.html。
(3)在windows下可以双击index.html,显示不同目录下的覆盖率统计结果,如下:
6、工程源码访问链接
7、参考文献