Junit入门到掌握-20-JUnit集成-代码覆盖率Cobetura基本使用

本文承接前文,介绍代码覆盖率测试软件Cobetura。详细阐述了Maven与Cobetura的集成过程,包括项目准备、添加pom.xml依赖、在cmd运行测试得到报告等步骤,还说明了如何根据报告补充单元测试用例以提高代码覆盖率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前面一篇文章介绍了代码覆盖率一些概念和代码覆盖率测试中一些准则或者覆盖率方式,这篇继续来学习代码覆盖率一个软件,或者一个插件。这个插件叫Cobetura, 可以直接在cmd通过命令运行,不过一般我们用maven集成,下面来看看这个maven+Cobetura集成过程。

1.项目准备

这个需要Eclipse新创建一个标准的maven项目,不然得到html报告,覆盖率全部选项都是0.

之前我们是这样两个分开项目

现在新建改成这样,中间带Demo是新建的标准的maven项目,什么是标准maven项目,下面这个有三个红圈的就是。

就是把原来被测项目代码拷贝到src/main/java包下,测试代码拷贝到src/test/java下,然后添加junit 4到build path就可以,环境就准备好了。

 

2.添加pom.xml依赖

直接打开pom.xml,拷贝我这边的<reporting>的部分内容

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>ProteinTrackerDemo</groupId>
  <artifactId>ProteinTrackerDemo</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>ProteinTrackerDemo</name>
  
  
  <reporting>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
				<version>2.7</version>
			</plugin>
		</plugins>
	</reporting>
</project>

然后Ctrl+s保存。

 

3.cmd运行测试得到报告

打开cmd,cd到Demo这个工程根目录,执行 mvn cobertura:cobertura, 然后等待一会,执行结束,我们去site下用浏览器打开index.html文件

上面图文件路径可能要刷新当前工程才出来。

展开包

上面三个java文件是src/main/java下的源码,绿色表示单元测试覆盖数量,红色表示没覆盖的值。Line Coverage表示代码行覆盖,Branch Coverage 是分支覆盖,例如if else的代码就是分支。Complexity表示复杂度,复杂度越高,代码越可读性越差。

点击TrackingService这个类,下拉

三行红色表示我们用例没有覆盖带的代码,所以我们需要去补充单元测试用例去覆盖这些红色的地方。这个代码覆盖率工具cobetura基本使用就介绍到这里。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值