linux html css output follow,Linux平台代码覆盖率测试工具GCOV的前端工具LCOV简介

本文详细介绍了Lcov工具的用途、安装步骤及使用方法,包括如何在Linux环境中安装Lcov,如何通过Lcov收集覆盖率数据并生成HTML报告,以及相关工具如genhtml的使用。此外,还提到了gcov-dump和ggcov等辅助工具,帮助读者深入理解代码覆盖率测试过程。
摘要由CSDN通过智能技术生成

本博客

http://blog.csdn.net/livelylittlefish 贴出做者(三二一@小鱼)相关研究、学习内容所作的笔记,欢迎广大朋友指正!

Contentphp

1. Lcov是什么?css

2.如何在Linux平台安装Lcov?html

3.如何使用Lcov?前端

(1)使用lcov收集覆盖率数据并写入文件ruby

(2)使用genhtml生成基于HTML的输出app

(3)该例子的图形显示函数

4.编译lcov自带例子工具

5.其余相关工具学习

(1) gcov-dump测试

(2) ggcov

1. Lcov是什么?

是GCOV图形化的前端工具

是Linux Test Project维护的开放源代码工具,最初被设计用来支持Linux内核覆盖率的度量

基于Html输出,并生成一棵完整的HTML树

输出包括概述、覆盖率百分比、图表,能快速浏览覆盖率数据

支持大项目,提供三个级别的视图:目录视图、文件视图、源码视图

Use lcov to collect coverage data and genhtml to create HTML pages. Coverage data can either be collectedfrom the currently running Linux kernel or from a user space application. To do this, youhavetocomplete the following preparation steps:

For Linux kernel coverage:

Followthe setup instructions for the gcov-kernel infrastructure:

For user space application coverage:

Compile the application with GCC using the options "-fprofile-arcs" and "-ftest-coverage".

2.如何在Linux平台安装Lcov?

# tar -zxvf lcov-1.9.tar.gz

# cd lcov-1.9

# ls

bincontribdescriptions.testslcovrcmanrpm

CHANGESCOPYINGexampleMakefileREADME

# make install

不须要编译,直接安装便可,lcov,gendesc, genhtml, geninfo, genpng将被安装到/usr/bin目录。

3.如何使用Lcov?

以Linux平台代码覆盖率测试工具GCOV简介一文的例子为例。

(1)使用lcov收集覆盖率数据并写入文件

# lcov --capture --directory . --output-file test.info --test-name test

Capturing coverage data from .

Found gcov version: 4.1.2

Scanning . for .gcda files ...

Found 1 data files in .

Processing test.gcda

Finished .info-file creation

.表示当前目录,收集coverage data,即.gcda文件中的信息,并写入test.info文件,且取名为test。其余选项请参考lcov的manual页。

test.info文件内容以下。

TN:test

SF:/home/zubo/gcc/2011-04-10.sample/test.c

FN:4,main

FNDA:1,main

FNF:1

FNH:1

BRDA:9,2,0,10

BRDA:9,2,1,1

BRDA:12,0,0,0

BRDA:12,0,1,1

BRF:4

BRH:3

DA:4,1

DA:7,1

DA:9,11

DA:10,10

DA:12,1

DA:13,0

DA:15,1

DA:16,1

LF:8

LH:7

end_of_record

(2)使用genhtml生成基于HTML的输出

# genhtml test.info --output-directory output --title "a simple test" --show-details --legend

Reading data file test.info

Found 1 entries.

Found common filename prefix "/home/zubo"

Writing .css and .png files.

Generating output.

Processing file gcc/2011-04-10.sample/test.c

Writing directory view page.

Overall coverage rate:

lines......: 87.5% (7 of 8 lines)

functions..: 100.0% (1 of 1 function)

branches...: 75.0% (3 of 4 branches)

选项解释请参考genhtml的manual页。cd到output目录,能够看到,生成了不少相关文件,以下。

# cd output

# ls

amber.pnggcov.cssindex-sort-b.htmlruby.png

emerald.pngglass.pngindex-sort-f.htmlsnow.png

gccindex.htmlindex-sort-l.htmlupdown.png

(3)该例子的图形显示

(3.1) top level的视图

a98328b87f4c48d3b44670f231eaa59a.gif

(3.2)文件或函数的视图

a98328b87f4c48d3b44670f231eaa59a.gif

4.编译lcov自带例子

# cd/usr/src/lcov-1.9/example

# make

编译、运行自带例子并查看结果是快速学习某个工具最好的方法。从example的makefile文件和编译输出,均可以学习相关概念和命令的使用方法。Html输出能够由/usr/src/lcov-1.9/example/output/index.html查看。读者可自行实验。

5.其余相关工具

(1) gcov-dump

或许,咱们还能够使用gcov-dump命令输出gcov的相关数据,但gcc默认不编译gcov-dump,所以,要使用它,可能须要从新编译gcc。

(2) ggcov

Ggcov is aGraphical tool for displaying gcov test coverage data.详细信息可参考http://ggcov.sourceforge.net。

Reference

lcov的manual页

genhtml的manual页

geninfo的manual页

lcov的readme文件,本文/usr/src/lcov-1.9/README

lcov的makefile文件,本文为/usr/src/lcov-1.9/Makefile

Technorati 标签:

Linux,

代码覆盖率,

Gcov,

Lcov

a98328b87f4c48d3b44670f231eaa59a.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值