执行排序

排序方式

  • 方法排序
  • 类排序
  • 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("第二条用例");
        }
    }
}

 


使用默认配置指定顺序

  1. 新建配置文件(路径:src/test/resources/junit-platform.properties)

  2. 在配置文件中写入对应的配置信息

  3. 可以分别指定方法的默认配置和类的默认配置

 

配置默认方法的执行顺序

#默认排序方式为随机排序
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

 

posted @ 2023-08-24 22:30  Mr_sven  阅读(8)  评论(0编辑  收藏  举报