Cobertura
Cobertura 是一种开源工具,它通过检测基本的代码,并观察在测试包运行时执行了哪些代码和没有执行哪些代码,来测量测试覆盖率。Cobertura提供了Ant和Maven的执行方式,并且Cobertura要比JaCoCo配置和使用起来更方便。
官方地址:http://sourceforge.net/projects/cobertura/
日本下载:http://sourceforge.jp/projects/sfnet_cobertura/releases/
Cobertura工具介绍
Cobertura 基本工具包里有四个基本过程及对应的工具:cobertura-check,cobertura-instrument,cobertura-merge,cobertura-report。但是这个脚本独立使用较为繁琐,不方便也不利于自动化。
Cobertura与Ant的配置
因为现在我们的Web项目都用maven管理,使用ant不方便,所以就没有仔细研究。Cobertura与Maven的配置
Cobertura 在 Maven 编译平台上有相应的 cobertura-maven-plugin 插件,使代码编译、检测、集成等各个周期可以流水线式自动化完成。
插件地址:http://mojo.codehaus.org/cobertura-maven-plugin/
Cobertura 目标指令及作用解释
Cobertura:check
检查最后一次标注(instrumentation) 正确与否
Cobertura:clean
清理插件生产的中间及最终报告文件
Cobertura:dump-datafile
Cobertura 数据文件 dump 指令 , 不常用
Cobertura:instrument
标注编译好的 javaclass 文件
Cobertura:cobertura
标注、运行测试并产生 Cobertura 覆盖率报告
具体的配置方法如下:
<!-- cobertura plugin -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<configuration>
<formats>
<format>html</format>
<format>xml</format>
</formats>
</configuration>
</plugin>
执行 mvn clean cobertura:cobertura
,即可运行test并获得测试覆盖率报告。
Cobertura与Jenkins的结合
在Jenkins上安装插件Cobertura插件,就可以增加单元测试的覆盖率报告的显示。
插件说明:https://wiki.jenkins-ci.org/display/JENKINS/Cobertura+Plugin