并行运行JUnit5测试,但要保留一些测试顺序

时间:2019-02-21 21:21:20

标签: java junit5

我有一个项目,我们进行了许多Junit测试。我们刚刚从JUnit4迁移到JUnit5。我们希望并行运行大多数测试,但是有一些需要顺序运行。有什么方法可以使用JUnit5并同时运行测试吗?

我问的原因是,我有4个测试将数据库加载到内存中,并且正在将数据加载到该数据库中。然后,我在该数据库上运行测试。这是我需要依次运行但不能并行运行的四个测试。

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

根据Parallel Test Execution and Single Thread Execution

由于maven-surefire-plugin:2.18,您可以应用JCIP批注 JUnit测试的Java类上的@ net.jcip.annotations.NotThreadSafe (纯测试类,套件,参数化等)以便执行 在单线程实例中。线程具有名称 maven-surefire-plugin @ NotThreadSafe,它在末尾执行 测试运行。

因此,您可以使用@NotThreadSafe注释测试类,以使它们在1个相同的线程(名为 maven-surefire-plugin @ NotThreadSafe )上执行。

  <dependency>
    <groupId>com.github.stephenc.jcip</groupId>
    <artifactId>jcip-annotations</artifactId>
    <version>1.0-1</version>
    <scope>test</scope>
  </dependency>