【发布时间】:2021-04-05 20:26:16
【问题描述】:
我使用 Java 11(我不是在寻找类中方法的执行顺序。)
网站上没有回答我问题的帖子
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>junit-jupiter</artifactId>
<scope>test</scope>
</dependency>
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@Suite.SuiteClasses({TestFirst.class,
TestSecond.class,
AdminTest.class})
public class ApplicationTests {
}
public class TestFirst extends ApplicationTests {
@Test
void run(){
}
}
public class TestSecond extends ApplicationTests {
@Test
void run(){
}
}
public class AdminTest extends ApplicationTests {
@Test
void run(){
}
}
我使用注释 @Suite.SuiteClasses。
我假设测试类应该一个一个地运行。未遵循发射顺序。每个类都位于自己的目录中。
对于 Spring,它就像一个单独的集成测试。
如何让类按照我定义的顺序执行?
也许还有另一种方法?
【问题讨论】:
-
测试用例彼此独立运行。对于每个测试用例,一旦执行测试用例,就会创建和转储单独的数据库。
-
1.我们不使用不同的 Textcontainers 来提升数据库。我们需要一个数据库来处理所有测试。 2. 我不认为我的问题是重复的。我不需要方法的顺序,我需要的是运行测试类的顺序——这很重要。
标签: java junit5 spring-boot-test