Junit5简介
一、Junit5框架构成
JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage
JUnit Platform: 是在jvm上启动测试框架的基础,定义了测试引擎的API,可以在cmd命令行启动这个平台
JUnit Jupiter:是新编程模块和扩展模块在junit5上写测试和扩展的组合,Jupiter子工程提供在平台上跑Jupiter的测试引擎
JUnit Vintage:提供跑junit3和junit4的测试引擎
备注:JUnit 5 对 Java 运行环境的最低要求是 Java 8
二、Junit5新特性
- 嵌套单元测试
- Lambda支持
- 参数化测试
- 重复测试
- 动态测试
三、Junit5注解
junit5与junit4的注解比较
junit5 | junit4 | 说明 |
@Test | @Test | 被注解的方法是一个测试方法。与junit4相同 |
@BeforeAll | @BeforeClass | 被注解的(静态)方法将在当前类的所有@Test方法前执行一次 |
@BeforeEach | @Before | 被注解的方法将在当前类的每个@Test方法前执行 |
@AfterEach | @After | 被注解的方法将在当前类的每个@Test方法后执行 |
@AfterAll | @AfterClass | 被注解的(静态)方法将在当前类的所有@Test方法后执行一次 |
@Disable | @Ignore | 被注解的方法不会执行(跳过),但会报告已执行 |
常用注解
注解 | 说明 |
@Test | 表名是一个测试方法 |
@DisplayName | 测试类或方法的显示名称 |
@BeforeEach | 表明在单个测试方法运行之前执行的测试方法 |
@AfterEach | 表明在单个测试方法运行之后执行的测试方法 |
@BeforeAll | 表明在所有测试方法运行之前执行的测试方法 |
@AfterAll | 表明在所有测试方法运行之后执行的测试方法 |
@Disabled | 禁用测试类或方法 |
@Tag | 为测试类或方法加标签 |
@RepeatedTest | 额外重复执行 |
@Nested | 嵌套测试 |
四、Junit5执行过程
五、套件测试
知道、想到、做到、得到
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)