文章目录
cobertura简单用用
前言
最近公司想要搞一下代码覆盖率,常用的单元测试覆盖率工具有Jacoco和cobertura,整两个都很优秀,借鉴一下别人对这两个工具的总结。
1.都是使用行覆盖和分支覆盖来统计;
2.覆盖率100%不能说明Testcase的完整性;
3.覆盖率只是一种手段并不能说明问题,最好在Testcase设计完后根据覆盖率在进行补充;
4.jacoco是字节码级别的覆盖率统计,一个判断分支如果覆盖了其中的一部分会显示为黄色;
5.cobertura使用的是源码级的对于一个判断分支若未覆盖正反两种情况则认为代码未覆盖;
今天主要对cobertura使用方式进行介绍。
一、cobertura是什么?
Cobertura是一个开源工具,它通过检测基本的代码,并观察在测试包运行时执行了哪些代码和没有执行哪些代码,来测量测试覆盖率。除了找出未测试到的代码并发现bug外,Cobertura还可以通过标记无用的、执行不到的代码来优化代码,还可以提供API 实际操作的内部信息。给人一种高大上的感觉!
二、使用cobertura
有了cobertura后,我们就要考虑怎么去使用它:可以直接以命令行的方式去使用,可以使用Jenkins集成Cobertura显示代码测试覆盖率报告,个人比较喜欢这个方式,可以顺带着熟悉一下jenkins。
1.什么是Jenkins
Jenkins是一个独立的开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。使用Jenkins集成Cobertura,所有模块的测试报告都被聚合到一起,看起来一目了然;相关配置在web页面上完成,灵活直观。
2.安装配置Jenkins
首先需要安装jenkins,jenkins是用java语言写的,可以直接将所提供的jenkins.war包放在tomcat下的webapps目录下启动就好,或者使用命令 java -jar jenkins.war --httpPort=8080 命令直接启动。
接下来我们访问 http://localhost:8080/jenkins 或者 http://localhost:8080/ 进入登录验证界面,按照提示输入验证码。
然后按照提示自动安装推荐的插件,会把我们需要的组件都安装上。
接下来会有创建用户,可以不创建直接使用admin就可以,可以不配置访问URL,使用默认就好。
接下来对jenkins进行基本的配置。Manager Jenkins 系统设置找到Global Tool Configuration 进行Maven 设置
JDK安装 和 MAVEN安装
应用后点击保存。
去设置SVN信息,点击Manage Credentials
3.安装Cobertura
1 打开Manager Plugins 在可选插件中搜索cobertura,点击install without restart
2 如果项目使用到maven: 打开Manager Plugins 在可选插件中搜索maven,点击install without restart
3 打开Manager Plugins 在可选插件中搜索Subversion,点击install without restar