对于jcoco的使用有两种方式:
1、直接使用eclipse插件,缺点:不能生成报告,只能在eclipse上查看效果
2、使用maven插件
1、采用线上安装的方式:
图解步骤:


成功标志:

测试:(使用方式与run as一致)

结果分析:绿色是指本次测试所执行到的地方,红色则是没有执行到的地方

也可查看具体每个类每个方法的被覆盖情况:

2、使用maven得到的效果与前边一样
步骤:在pom中加入jcoco插件并指定报告的生成路径
<!-- jacoco plugin -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.6.4.201312101107</version>
<executions>
<execution>
<!-- 在maven的initialize阶段,将Jacoco的runtime agent作为VM的一个参数 传给被测程序,用于监控JVM中的调用。 -->
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<destFile>
${project.build.directory}/coverage-reports/jacoco.exec
</destFile>
<propertyName>surefireArgLine</propertyName>
</configuration>
</execution>
<!-- 在程序的verify阶段,执行report测试的程序。 文件的输入为perpare-agent阶段中设置或者默认的jacoco.exec.
参数 includes和excludes可用来选定report中过滤的类。 -->
<execution>
<id>default-report</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
<outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<!-- 使用 maven-surefire-plugin来执行单元测试。 将surefireArgLine赋值给argLine参数,以保证在测试执行时Jacoco
agent处于运行状态。 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.16</version>
<configuration>
<argLine>${surefireArgLine}</argLine>
</configuration>
</plugin>
使用:run as -> maven test(maven会自动下载相应的plugin然后生成相应的报告)

打开后的效果与用eclipse插件的效果是一样的~~
有研究的伙伴交流一下经验哈,刚接触还不大会用,THX
