执行排序
排序方式
- 方法排序
- 类排序
- Suite
方法排序的类型
类型 | 说明 |
---|---|
OrderAnnotation(重点) | @Order 注解指定排序 |
DisplayName | 根据显示名称排序 |
Random | 随机排序 |
MethodName | 根据方法名称排序 |
import org.junit.jupiter.api.MethodOrderer.OrderAnnotation; import org.junit.jupiter.api.Order; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestMethodOrder; //设定排序方法为注解指定排序,需要和@Order结合使用 @TestMethodOrder(OrderAnnotation.class) class OrderedTestsDemo { @Test @Order(1) void nullValues() { } @Test @Order(2) void emptyValues() { } @Test @Order(3) void validValues() { } }
类排序-DisplayName名称排序
类型 | 说明 |
---|---|
OrderAnnotation(重点) | @Order 注解指定排序 |
DisplayName | 根据显示名称排序 |
Random | 随机排序 |
ClassName | 根据类名排序 |
import org.junit.jupiter.api.*; // 指定类执行顺序的方式,DisplayName表示通过DisplayName排序 @TestClassOrder(ClassOrderer.DisplayName.class) class orderExampleTest { // 因为是多类执行,所以需要结合@Nested注解 @Nested @DisplayName("b") class PrimaryTests { @Test void test1() { System.out.println("第一条用例"); } } @Nested @DisplayName("a") class SecondaryTests { @Test void test2() { System.out.println("第二条用例"); } } }
使用默认配置指定顺序
-
新建配置文件(路径:
src/test/resources/junit-platform.properties
) -
在配置文件中写入对应的配置信息
-
可以分别指定方法的默认配置和类的默认配置
配置默认方法的执行顺序
#默认排序方式为随机排序
junit.jupiter.testmethod.order.default = org.junit.jupiter.api.MethodOrderer$Random
#默认排序方式为通过方法名排序
#junit.jupiter.testmethod.order.default = org.junit.jupiter.api.MethodOrderer$MethodName
#默认排序方式为通过Order注解指定
#junit.jupiter.testmethod.order.default = org.junit.jupiter.api.MethodOrderer$OrderAnnotation
#默认排序方式为通过DisplayName排序
#junit.jupiter.testmethod.order.default = org.junit.jupiter.api.MethodOrderer$DisplayName
配置默认类的执行顺序
#默认排序方式为随机排序
junit.jupiter.testclass.order.default = org.junit.jupiter.api.ClassOrderer$Random
#默认排序方式为通过类名排序
junit.jupiter.testclass.order.default = org.junit.jupiter.api.ClassOrderer$ClassName
#默认排序方式为通过DisplayName排序
junit.jupiter.testclass.order.default = org.junit.jupiter.api.ClassOrderer$DisplayName
#默认排序方式为通过Order注解指定
junit.jupiter.testclass.order.default = org.junit.jupiter.api.ClassOrderer$OrderAnnotation
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律