Мои тесты E2E работают довольно медленно (25 минут), так как они называют кучу сервисов и ожидают, что некоторые данные будут заполнены в базе данных. Я хочу запустить его одновременно. Я использую следующие настройки: maven-failsafe-plugin
Параллельно выполняются тесты Spock
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${plugin.failsave.version}</version>
<executions>
<execution>
<id>run-integration-tests</id>
<phase>integration-test</phase>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
И мой тест выглядит примерно так (больше информации может быть обеспечена, если это необходимо):
@Stepwise
@DataJpaTest
@ContextConfiguration(classes = SomeControllerITConfig)
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
class SomeControllerIT extends Specification {
// some variables definition
def "test1":
// some test
def "test2":
// some test
// some more tests
}
Я пытался использовать threadCount
свойство вместе с parallel
или forkCount
, но ничего не работает для меня. Кроме того, я пытался заставить следующую зависимость в maven-failsafe-plugin
зависимостей:
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.16</version>
</dependency>
Спасибо заранее!
Из того, что видно в этом PR, это связано с параллелизацией выполнения тестов в том же Spec. Распараллеливание на основе классов должно работать нормально, как есть. – jihor
@jihor в Gradle только –