将所有测试项目设置为在SpringBoot和junit中并行工作后的并发修改异常

问题描述 投票:0回答:1

运行所有Java测试需要花费大量时间才能完成。

因此解决方案是使用多个线程并行运行所有测试,以在所有类中使用@RunWith(ParallelSuite.class)运行函数。

但是问题是,当某些函数并行运行时,它们使用相同的资源。因此它抛出一个ConcurrentModificationException。解决方案是设置此功能并按顺序运行它们。

如何在将Spring Boot项目中的所有junit测试配置为使用ParallelSuite并行工作后,如何隔离某些功能以使其顺序工作,否则还有其他解决方案。

java spring mockito junit4
1个回答
0
投票

synchronized用于需要一次由一个线程访问的功能,或者您可以使用:C在单个功能内完成:

void runSync() {
    synchronized (this) {
        count = count + 1;
    }
}

您可能还应该阅读this

© www.soinside.com 2019 - 2024. All rights reserved.