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

相关推荐
mghio32 分钟前
Dubbo 中的集群容错
java·微服务·dubbo
咖啡教室5 小时前
java日常开发笔记和开发问题记录
java
咖啡教室6 小时前
java练习项目记录笔记
java
鱼樱前端6 小时前
maven的基础安装和使用--mac/window版本
java·后端
RainbowSea7 小时前
6. RabbitMQ 死信队列的详细操作编写
java·消息队列·rabbitmq
RainbowSea7 小时前
5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
java·消息队列·rabbitmq
李少兄8 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
此木|西贝8 小时前
【设计模式】原型模式
java·设计模式·原型模式
可乐加.糖9 小时前
一篇关于Netty相关的梳理总结
java·后端·网络协议·netty·信息与通信