自动测试(base junit)组件

​背景

上篇《单元测试组件使用说明.docx》介绍了单元组件,解决3个问题:

1 feign依赖,使用mock组件

2 权限和用户上下文,datascope组件

3 切面,测试目标可带注解,方法前后执行切面,用于解释传入的json参数

单元组件支持复杂的微服务单元测试,是自动测试的基础

自动测试

自动测试组件提供以下特性:

1 测试套件,组合单元测试为测试套件

Junit5提供suite注解,但低版本的spring boot(2.5.2)支持不好,因此本组件使用tag注解

Tag注解

2 触发单元测试

引入maven-surefire-plugin,测试套件功能也是该组件提供

引入surefire插件,其中groups配置对应加入测试套件的测试类的标签

3 生成测试报告

引入++maven-surefire-report-plugin++并支持生成聚合报告,也可以单独生成模块的报告,支持html格式

引入++maven-surefire-report-plugin++插件,aggregate属性支持聚合报告

4 弹出测试报告

测试完成自动弹出报告,是一个便利功能

弹出报告引入maven-antrun-plugin插件

Maven命令

自动测试使用maven

mvn clean test 执行单元测试

mvn surefire-report:report-only -Daggregate=true 生成报告,只生成聚合报告,当aggregate=false,生成模块报告

mvn antrun:run@open-report 弹出报告

报告实例

测试统计

测试视图

测试按包,类,方法列出测试

测试明细

问题

  1. Maven命令不支持连起来,如下,

mvn clean test surefire-report:report-only -Daggregate=true antrun:run@open-report

连起来命令执行不按顺序,弹出的可能是上一次的测试报告

相关推荐
金銀銅鐵1 天前
浅解 JUnit 4 第十一篇:@Before 注解和 @After 注解如何发挥作用?
junit·单元测试
金銀銅鐵2 天前
浅解 JUnit 4 第十篇:方法上的 @Ignore 注解
junit·单元测试
金銀銅鐵6 天前
浅解 JUnit 4 第九篇:JUnitCore (下)
junit·单元测试
钟智强6 天前
CVE-2025-49844高危预警:Redis Lua脚本引擎UAF漏洞深度剖析与POC实战
数据库·redis·web安全·junit·lua
金銀銅鐵7 天前
浅解 JUnit 4 第八篇:JUnitCore (上)
junit·单元测试
百锦再9 天前
Java中的日期时间API详解:从Date、Calendar到现代时间体系
java·开发语言·spring boot·struts·spring cloud·junit·kafka
金銀銅鐵10 天前
浅解 Junit 4 第七篇:AllDefaultPossibilitiesBuilder
java·junit·单元测试
金銀銅鐵11 天前
浅解 Junit 4 第六篇:AnnotatedBuilder 和 RunnerBuilder
后端·junit·单元测试
金銀銅鐵12 天前
浅解 Junit 4 第五篇:IgnoredBuilder 和 RunnerBuilder
junit·单元测试
金銀銅鐵15 天前
浅解 Junit 4 第四篇:类上的 @Ignore 注解
java·junit·单元测试