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 生成报告如下:

相关推荐
豆沙沙包?1 小时前
8.学习笔记-Maven进阶(P82-P89)
笔记·学习·maven
lybugproducer1 小时前
创建型设计模式之:简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式
java·设计模式·建造者模式·简单工厂模式·工厂方法模式·抽象工厂模式·面向对象
南客先生1 小时前
马架构的Netty、MQTT、CoAP面试之旅
java·mqtt·面试·netty·coap
Minyy111 小时前
SpringBoot程序的创建以及特点,配置文件,LogBack记录日志,配置过滤器、拦截器、全局异常
xml·java·spring boot·后端·spring·mybatis·logback
百锦再1 小时前
Java与Kotlin在Android开发中的全面对比分析
android·java·google·kotlin·app·效率·趋势
武昌库里写JAVA2 小时前
39.剖析无处不在的数据结构
java·vue.js·spring boot·课程设计·宠物管理
Nelson_hehe5 小时前
Java基础第四章、面向对象
java·语法基础·面向对象程序设计
Thomas_YXQ5 小时前
Unity3D Lua集成技术指南
java·开发语言·驱动开发·junit·全文检索·lua·unity3d
ShiinaMashirol6 小时前
代码随想录打卡|Day27(合并区间、单调递增的数字、监控二叉树)
java·算法
东阳马生架构7 小时前
Nacos简介—3.Nacos的配置简介
java