自动测试(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

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

相关推荐
Java小白笔记3 天前
Java 单元测试怎么写:JUnit 5、Mockito 与 Spring Boot 方法级实战
java·junit·单元测试
盟道科技6 天前
Redis+Lua 实现滑动窗口限流:从固定窗口踩坑到生产可用的完整方案
redis·junit·lua
呆呆敲代码的小Y13 天前
Lua 上值(UpValue)
开发语言·junit·lua·lua上值·upvalue
呆呆敲代码的小Y13 天前
【游戏开发】xLua 性能优化技巧
junit·性能优化·lua·xlua
lhldsg17 天前
家政派单系统开发实战:从需求分析到智能调度全流程指南
java·junit·小程序·uni-app·需求分析
肠畔码农19 天前
深度解密 Redis 核心引擎:从 MULTI/EXEC 事务机制到 EVAL 脚本的原子性演进
数据库·redis·junit
会编程的吕洞宾21 天前
Spring Cloud Gateway限流:Redis令牌桶防刷实战
数据库·redis·junit
難釋懷23 天前
Nginx-Lua
nginx·junit·lua
萧瑟余晖24 天前
Java深入解析篇三十七之JUnit 5 详解
java·junit
骑士雄师1 个月前
superpowers使用流程
junit·skill