51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 8491|回复: 2
打印 上一主题 下一主题

[转贴] C++ 代码覆盖率工具Bullseye Coverage

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-1-16 18:01:46 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
作者:谢慧强 [2004/04/15]

     简介
     Bullseye Coverage 是Bullseye 公司提供的一款C/C++代码覆盖率测试工具,个人觉得是
比Rational 的Pure Coverage 更优秀的测试工具。相对于Rational 的Pure Coverage,Bullseye
     Coverage 支持的C/C++的编译器更多,除了支持各种Unix 下的编译器之外,在Windows 下
支持VC、Borland C++、Gnu C++、Inter C++。提供的代码覆盖率是分支覆盖率而不是一般
代码覆盖率,我个人认为分支覆盖率比代码覆盖率更好。
Bullseye Coverage 可以从http://www.bullseye.com/上获取,先登记后等待Bullseye 回
Email,在回复的Email 应该包括具体的下载地址和一个30 天的试用License。
     测试VC 程序
     和Rational 的Pure Coverage 一样,Bullseye Coverage 与VC 的集成比较好。在安装的时
候选择要安装VC 及其它C/C++编译器。
      
     在Visual Studio 的Tools 菜单将增加Enable 和Disable Coverage Build 两个子菜单,
选择Enable 之后,重新Rebuild 运行就可以。
     测试C++ Builder 程序
     测试C++ Builder 程序比较麻烦,Bullseye Coverage 没有直接集成到C++ Builder 的Ide
中,在帮助只提供了C++ Builder 3、4、5 的使用,但据Bullseye 公司的回复也支持C++ Builder6。我实验中使用的是C++ Builder 5,使用6 的步骤应该和5 是一样的。使用C++ Builder 3和4 的可以去看看帮助,主要是mak 文件的制作不一样。
     首先先在C++ Builder 编译程序并保证程序能够运行,然后从菜单Project->Export
Makefile 导出mak 文件到Project 存放目录。
     
     然后退出C++ Builder 并使用任何文本编写工具如NotePad、UltraEdit 将mak 文件中包
含的“$(BCB)\BIN\”全部删除,要退出C++ Builder 的原因是后面的make 将要使用.tds 文
件。然后检查环境变量COVFILE 是否正确,在Bullseye Coverage 安装COVFILE 的确省值
为“我的文挡\test.cov”,如果要修改必须在运行make 指令之前。COVFILE 设置没有问题的话,就删除Project 所有的.obj 文件,然后运行:
cov01 -1
make –f project.mak
     在运行make 的时候,一个新的覆盖率都为零的COVFILE 就产生了。之后运行project
生成的exe 文件,COVFILE 中的数据就会同步更新。使用BullseyeCoverage.COV 文件可以使用BullseyeCoverage 来查看。打开一个COV 文件后,首先在在左边
我们可以看到有三种查看方式
     
     一般都只使用“Files”,要注意由于BullseyeCoverage 对C++ Bulder/VC 本身的类的情
况也会跟踪覆盖情况,我们在实际统计是应该忽略这一部分,不能用底部的数据为准
     
点击“Files”各个文件夹、可以看到下一级的代码覆盖率情况。点击文件可以看到文件
内各函数的覆盖情况。
     使用“Find”应该注意增加修改一个“Filter”后,要选上结果才会在右边显示
     
     点击文件中的任何函数可以查看文件中函数的具体覆盖情况,
     
     绿“?”或“T”代表已经执行。红色“?”表示没有执行。
     注意:
     1、Bullseye Coverage 在计算
     if …
     else if
     else
     时候有问题,如果只执行了其中之一,会报只覆盖25%。
     2、Bullseye Coverage 似乎会缓存上次打开的COV文件,如果发现有问题应该重新打开
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

3#
发表于 2011-9-7 11:46:36 | 只看该作者
有没有免费的
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 2011-9-7 11:46:17 | 只看该作者
有没有**版的。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-9-20 06:05 , Processed in 0.074297 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表