集成 jacoco 插件,查看单元测试覆盖率
文章目录
- 前言
- 集成 jacoco 插件,查看单元测试覆盖率
- 1. 添加pom
- 2. 配置完成、执行扫描
- 3. 执行结果
- 4. 单元测试报告
前言
如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!
集成 jacoco 插件,查看单元测试覆盖率
1. 添加pom
首先根据你的springBoot版本号选择你对应的pom依赖,因为你的插件版本要确保和你的 Spring Boot 版本兼容。
我的springBoot 版本号如下:
<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 插件:
<!-- 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>
含义:
<configuration><dataFile>target/jacoco.exec</dataFile><outputDirectory>target/jacoco</outputDirectory>
</configuration>
dataFile: 指定了存储测试覆盖率数据的文件路径。在这里,覆盖率数据会保存在 target/jacoco.exec 文件中。该文件包含了 Jacoco 在测试期间收集的覆盖率信息。
outputDirectory: 指定了生成的报告文件存放的位置。生成的 HTML 报告将存储在 target/jacoco 目录下。
<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

相关文章:
集成 jacoco 插件,查看单元测试覆盖率
文章目录 前言集成 jacoco 插件,查看单元测试覆盖率1. 添加pom2. 配置完成、执行扫描3. 执行结果4. 单元测试报告 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。 而且听说点赞…...
MySQL purged gtid是如何生成和维护的
目录 1. GTID的基本概念2. GTID的生成3. GTID的清除3.1 手动清除二进制日志3.2 自动清除二进制日志3.3 重置主库 在MySQL中,gtid_purged表示已清除的GTID集合。 gtid_purged的生成和维护过程如下: 1. GTID的基本概念 GTID(Global Transact…...
[创业之路-206]:《华为战略管理法-DSTE实战体系》- 6-关键成功因素法CSF
目录 一、概述 1、定义与起源 2、关键成功因素的定义 3、关键成功因素的来源 4、关键成功因素的确认方法 5、关键成功因素法的步骤 6、关键成功因素法的应用 7、关键成功因素法的优势与局限性 二、 关键成功因素法CSF的应用 1、企业战略管理 2、项目管理 3、绩效管…...
[Unity]【图形渲染】【游戏开发】Shader数学基础4-更多矢量运算
在计算机图形学和着色器编程中,矢量运算是核心的数学工具之一。矢量用于描述空间中的位置、方向、速度等各种物理量,并在图形变换、光照计算、纹理映射等方面起着至关重要的作用。本篇文章将详细讲解矢量和标量之间的乘法与除法、矢量的加法与减法、矢量的模与单位矢量、点积…...
目标检测——基于yolov8和pyqt的螺栓松动检测系统
目录 1.项目克隆和环境配置1.1 我这里使用的是v8.0.6版本1.2 项目代码结构介绍 2.数据集介绍2.1 数据集采集2.2采集结果介绍 3.模型训练4.pyqt界面设计4.1 界面内容介绍4.2 界面实现 5.操作中的逻辑实现5.1 图片检测5.2 文件夹检测5.3 视频检测和摄像头检测 6. 效果展示 1.项目…...
【Java数据结构】LinkedList
认识LinkedList LinkedList就是一个链表,它也是实现List接口的一个类。LinkedList就是通过next引用将所有的结点链接起来,所以不需要数组。LinkedList也是以泛型的方法实现的,所以使用这个类都需要实例化对象。 链表分为很多种,比…...
图像处理-Ch4-频率域处理
Ch4 频率域处理(Image Enhancement in Frequency Domain) FT :将信号表示成各种频率的正弦信号的线性组合。 频谱: ∣ F ( u , v ) ∣ [ R 2 ( u , v ) I 2 ( u , v ) ] 1 2 |F(u, v)| \left[ R^2(u, v) I^2(u, v) \right]^{\frac{1}{2}} ∣F(u,v)…...
WPS工具栏灰色怎么办
WPS离线不登录,开启工具栏等相关功能 当你在使用WPS的过程中,若因网络问题或其他特殊原因,导致无法登录使用WPS时,可根据以下步骤开启离线兼容模式,开启此模式后,可在未登录的状态下,激活并使用…...
渐开线齿轮和摆线齿轮有什么区别?
摆线齿形与渐开线齿形的区别 虽然在比对这两种齿形,但有一个事情希望大家注意:渐开线齿轮只是摆线齿轮的一个特例。 (1)摆线齿形的压力角在啮合开始时最大,在齿节点减小到零,在啮合结束时再次增大到最大…...
vulnhub靶场-matrix-breakout-2-morpheus攻略(截止至获取shell)
扫描出ip为192.168.121.161 访问该ip,发现只是一个静态页面什么也没有 使用dir dirsearch 御剑都只能扫描到/robots.txt /server-status 两个页面,前者提示我们什么也没有,后面两个没有权限访问 扫描端口,存在81端口 访问&#x…...
应用高次、有理代数式为AI生成亚对称图像
原创:daode1212(daode3056) 本文定义不完全对称的图像叫亚对称图像,因为全对称的太过机械,不符合人工的特点,本人基于二元高次的有理式,生成时引入N个随机数分A,B两个组,再通过指针对画布所有像素高速扫描生…...
潜在狄利克雷分配LDA 算法深度解析
引言 潜在狄利克雷分配(Latent Dirichlet Allocation, LDA)是一种广泛应用于文本挖掘和信息检索领域的主题模型。它能够从文档集合中自动发现隐藏的主题结构,为理解大规模文本数据提供了强有力的工具。本文将着重讲解 LDA 的核心理论&#x…...
[x86 ubuntu22.04]双触摸屏的触摸事件都响应在同一个触摸屏上
1 问题描述 CPU:G6900E OS:ubuntu22.04 Kernel:6.8.0-49-generic 系统下有两个一样的 edp 触摸屏,两个触摸屏的触摸事件都响应在同一个 edp 屏幕上。 2 解决过程 使用“xinput”命令查看输入设备,可以看到只有一个 to…...
重温设计模式--代理模式
文章目录 定义UML图代理模式主要有以下几种常见类型:代理模式涉及的主要角色有:C 代码示例 定义 代理模式(Proxy Pattern)属于结构型设计模式,它为其他对象提供一种代理以控制对这个对象的访问。 通过引入代理对象&am…...
一些elasticsearch重要概念与配置参数
ES 是在 lucene 的基础上进行研发的,隐藏了 lucene 的复杂性,提供简单易用的 RESTful Api接口。ES 的分片相当于 lucene 的索引。 Node 节点的几种部署实例 实例一: 只用于数据存储和数据查询,降低其资源消耗率 node.master: false node.da…...
leetcode 面试经典 150 题:螺旋矩阵
链接螺旋矩阵题序号54题型二维数组(矩阵)解题方法模拟路径法难度中等熟练度✅✅✅ 题目 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3…...
JAVA AOP简单实践(基于SpringBoot)
天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...
java agent的使用【通俗易懂版】
一、静态代理Agent 1.生成Agent的jar包 (1)创建Agent项目,引入javassist.jar包 (2)编写premain方法 import java.lang.instrument.Instrumentation;public class Agent1 {public static void premain(Stri…...
大模型学习指南
随着人工智能的迅猛发展,大模型成为了技术前沿的璀璨明星。踏入大模型学习领域,需要在多个关键方面下功夫。 扎实的数学功底是基石。线性代数为理解多维数据、矩阵运算提供支撑,像大模型中权重矩阵的处理就离不开它;概率论与数理…...
单片机:实现定时器中断(数码管读秒+LED闪烁)(附带源码)
单片机实现定时器中断:数码管读秒与LED闪烁 在单片机项目中,定时器中断是一个常见的应用,用于实现定时任务,例如定时更新显示或控制周期性事件。本文将介绍如何使用定时器中断实现数码管读秒和LED闪烁功能。通过使用定时器中断&a…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...
libfmt: 现代C++的格式化工具库介绍与酷炫功能
libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全:…...
云原生周刊:k0s 成为 CNCF 沙箱项目
开源项目推荐 HAMi HAMi(原名 k8s‑vGPU‑scheduler)是一款 CNCF Sandbox 级别的开源 K8s 中间件,通过虚拟化 GPU/NPU 等异构设备并支持内存、计算核心时间片隔离及共享调度,为容器提供统一接口,实现细粒度资源配额…...
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...
