Java maven项目打包自动测试并集成jacoco生成代码测试覆盖度报告

引入Junit

引入 junit5 单元测试依赖

xml 复制代码
		<properties>
	        <junit.version>5.10.2</junit.version>
	        <jacoco.version>0.8.12</jacoco.version>
	    </properties>
	    
	    <dependencies>
            <!-- 单元测试 -->
            <dependency>
                <groupId>org.junit.jupiter</groupId>
                <artifactId>junit-jupiter-api</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.junit.jupiter</groupId>
                <artifactId>junit-jupiter-engine</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>
         </dependencies>

引入插件

引入 jacoco

xml 复制代码
		<properties>
	        <jacoco.version>0.8.12</jacoco.version>
	    </properties>
	    
	    <build>
			<plugins>
			    <plugin>
	                <groupId>org.jacoco</groupId>
	                <artifactId>jacoco-maven-plugin</artifactId>
	                <version>${jacoco.version}</version>
	                <executions>
	                    <execution>
	                        <id>prepare-agent</id>
	                        <goals>
	                            <goal>prepare-agent</goal>
	                        </goals>
	                    </execution>
	                    <execution>
	                        <id>report</id>
	                        <!-- 这是指定生成报告时期,注意一定要在test之后 -->
	                        <phase>prepare-package</phase>
	                        <goals>
	                            <goal>report</goal>
	                        </goals>
	                    </execution>
	                </executions>
	                <configuration>
	                	<!-- 这是报告生成位置 target/site/jacoco -->
	                    <outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
	                </configuration>
	            </plugin>
	        </plugins>
        </build>

引入 maven-surefire-plugin 插件

xml 复制代码
		<properties>
	        <jacoco.version>0.8.12</jacoco.version>
	    </properties>
	    
	    <build>
			<plugins>
			    <plugin>
	                <groupId>org.apache.maven.plugins</groupId>
	                <artifactId>maven-surefire-plugin</artifactId>
	                <version>3.2.5</version>
	            </plugin>
	        </plugins>
        </build>

配置完成后执行 mvn clean install 生成报告如下:

相关推荐
毕设源码-赖学姐2 小时前
【开题答辩全过程】以 高校评教评学系统的设计与实现为例,包含答辩的问题和答案
java·eclipse
老华带你飞2 小时前
博物馆展览门户|基于Java博物馆展览门户系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
路边草随风2 小时前
iceberg 基于 cosn 构建 catalog
java·大数据
It's now2 小时前
Spring Framework 7.0 原生弹性功能系统讲解
java·后端·spring
点PY2 小时前
C++ 中 std::async 和 std::future 的并发性
java·开发语言·c++
一 乐3 小时前
人事管理系统|基于Springboot+vue的企业人力资源管理系统设计与实现(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot·后端
带刺的坐椅3 小时前
Solon AI 开发学习19 - 结合 Solon Flow 实现 ReAct 效果
java·ai·chatgpt·llm·openai·solon·deepseek
CoderYanger3 小时前
Java SE——12.异常(≠错误)《干货笔记》
java·开发语言
Data_agent3 小时前
1688获得1688店铺所有商品API,python请求示例
java·开发语言·python
why1513 小时前
面经整理——算法
java·数据结构·算法