集成 jacoco 插件,查看单元测试覆盖率

文章目录

  • 前言
    • [集成 jacoco 插件,查看单元测试覆盖率](#集成 jacoco 插件,查看单元测试覆盖率)
      • [1. 添加pom](#1. 添加pom)
      • [2. 配置完成、执行扫描](#2. 配置完成、执行扫描)
      • [3. 执行结果](#3. 执行结果)
      • [4. 单元测试报告](#4. 单元测试报告)

前言

如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。

而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


集成 jacoco 插件,查看单元测试覆盖率

1. 添加pom

首先根据你的springBoot版本号选择你对应的pom依赖,因为你的插件版本要确保和你的 Spring Boot 版本兼容。

我的springBoot 版本号如下:

java 复制代码
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.4.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

下面是jacoco 插件:

java 复制代码
 <!-- jacoco 插件,查看单元测试覆盖率 -->
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.8.5</version>
                <configuration>
                    <dataFile>target/jacoco.exec</dataFile>
                    <outputDirectory>target/jacoco</outputDirectory>
                </configuration>
                <executions>
                    <execution>
                        <id>jacoco-initialize</id>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>jacoco-site</id>
                        <phase>test</phase>
                        <goals>
                            <goal>report</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

含义:

java 复制代码
<configuration>
    <dataFile>target/jacoco.exec</dataFile>
    <outputDirectory>target/jacoco</outputDirectory>
</configuration>

dataFile: 指定了存储测试覆盖率数据的文件路径。在这里,覆盖率数据会保存在 target/jacoco.exec 文件中。该文件包含了 Jacoco 在测试期间收集的覆盖率信息。

outputDirectory: 指定了生成的报告文件存放的位置。生成的 HTML 报告将存储在 target/jacoco 目录下。

java 复制代码
<executions>
    <execution>
        <!-- 执行的标识符 -->
        <id>jacoco-initialize</id>
         <!-- 这个目标会在测试执行之前准备 Jacoco 的代理,
         它会在 JVM 中插入 Jacoco 的代码覆盖率代理,来收集覆盖率数据。
         这个目标通常需要在 test 阶段之前执行。 -->
        <goals>
            <goal>prepare-agent</goal>
        </goals>
    </execution>
    <execution>
         <!-- 执行的标识符 -->
        <id>jacoco-site</id>
        <!-- 表示在 Maven 构建的 test 阶段执行。 -->
        <phase>test</phase>
        <!-- 这个目标会在测试执行完毕后生成 Jacoco 的报告。
        报告会根据测试过程中收集的覆盖率数据生成,通常是 HTML 格式的报告。 -->
        <goals>
            <goal>report</goal>
        </goals>
    </execution>
</executions>

2. 配置完成、执行扫描

3. 执行结果

4. 单元测试报告

该单元测试报告会在工程target目录下出现:

使用浏览器打开index.html

相关推荐
Lisonseekpan4 小时前
Guava Cache 高性能本地缓存库详解与使用案例
java·spring boot·后端·缓存·guava
我真的是大笨蛋4 小时前
Redis的String详解
java·数据库·spring boot·redis·spring·缓存
低调小一6 小时前
LRU缓存科普与实现(Kotlin 与 Swift)
开发语言·缓存·kotlin
程序员二黑7 小时前
接口测试全流程实战:从工具到架构的深度解析
单元测试·测试·ab测试
伐尘8 小时前
【计算机】常见的缓存和查看方法
缓存·电脑·笔记本
我梦之68 小时前
libevent输出缓存区的数据
服务器·网络·c++·缓存
步行cgn9 小时前
JUnit 单元测试详细使用指南
junit·sqlserver·单元测试
Knight_AL9 小时前
Java 单元测试全攻略:JUnit 生命周期、覆盖率提升、自动化框架与 Mock 技术
java·junit·单元测试
兜兜风d'10 小时前
redis字符串命令
数据库·redis·缓存
野犬寒鸦12 小时前
从零起步学习Redis || 第十二章:Redis Cluster集群如何解决Redis单机模式的性能瓶颈及高可用分布式部署方案详解
java·数据库·redis·后端·缓存