使用LCOV统计代码覆盖率(c代码)

来源:互联网 发布:modbus tcp c编程实例 编辑:程序博客网 时间:2024/06/12 01:14

1 下载,并安装

官方网站地址http://ltp.sourceforge.net/coverage/lcov.php

下载lcov-1.9.tar.gz;切换到root用户;进行安装;make install;

2 准备工作

在编译代码的时候,需要增加一个可选条件:--enable-coverage

例如:./configure --prefix=*** --enable-64bit --enable-coverage

3 运行测试代码后,如何收集

切换到源代码的目录,运行lcov –d . –c –t “APPNAME” –o APPNAME1.lcov

如果有些代码,始终无法覆盖的话,可以考虑从结果文件中移除:lcov –r APPNAME1.lcov PATTEN –o APPNAME_f1.lcov

 

加入该程序为分布式运行的程序,例如同样的APP,经过配置,可以变成Cluster,而且case会覆盖到远端App中的代码,可以考虑将多个Lcov文件,进行合并,变成一个Lcov文件。例如:

Lcov –a APPNAME_f1.lcov –a APPNAME_f2.lcov …… -o APPNAME_fnl.lcov

 

至此,代码覆盖率的收集工作,已经结束了。

 

4 查看结果

如果想通过浏览器,查看到收集的代码覆盖率结果,可以通过其自带的genhtml工具生成。

具体用法如下:

genhtml –o TARGET_FOLDER --show-details --legend –highlight –t TITLE APPNAME_fnl.lcov

原创粉丝点击