Параллельный запуск тестов JUnit в IntelliJ IDEA

У меня есть большой набор тестов, выполнение которых занимает около получаса, и я хотел бы иметь возможность параллельно проводить тестовые классы.

Есть ли способ сделать это с IntelliJ IDEA 9?


person Omer van Kloeten    schedule 24.08.2010    source источник
comment
Не вопрос-обман (поскольку этот вопрос предназначен для IntelliJ), но здесь есть обсуждение: stackoverflow.com/questions/423627/   -  person Noel M    schedule 24.08.2010


Ответы (3)


IDEA будет понимать параллельные тесты JUnit только с версии 10.

Существует проблема трекера, за которую вы можете проголосовать и следить за прогрессом: http://youtrack.jetbrains.net/issue/IDEA-47103

Мы планируем добавить его в IDEA 10, но приоритет будет зависеть от количества голосов.

person CrazyCoder    schedule 24.08.2010
comment
Можете ли вы предложить источник для этого? - person Omer van Kloeten; 24.08.2010
comment
Источник — разработчик IDEA, с которым я разговаривал. Я добавил ссылку на проблему с трекером в свой ответ. - person CrazyCoder; 24.08.2010
comment
Замечательный! Когда вы планируете выпустить IDEA 10? - person Omer van Kloeten; 25.08.2010
comment
IDEA 10 будет выпущена к концу 2010 года. - person CrazyCoder; 25.08.2010

Отвечаю поздно для потомков.

Вы можете запустить тесты JUnit параллельно (или последовательно) с любым уровнем детализации в IntelliJ, изменив Fork mode в конфигурации запуска теста.

Будьте осторожны, чтобы не спутать это с опцией Allow parallel run, которая позволяет запускать выполнение теста несколько раз в вашей среде IDE.

Чтобы указать распараллеливание теста JUnit (или группы тестов) в IntelliJ, откройте Конфигурацию запуска для этого теста и измените параметр Режим разветвления или параметр Разрешить параллельный запуск. На этом изображении показан IntelliJ IDEA 2018.3.4

person JJ Brown    schedule 16.01.2019
comment
Разрешить параллельный запуск означает, что одна и та же конфигурация запуска может быть запущена повторно, в то время как предыдущие воплощения все еще выполняются. Скорее всего, это не то, что люди ищут, когда пытаются запустить свои тесты одновременно — это позволяет им параллельно выполнять один и тот же набор тестов, но не позволяет одновременно запускать отдельные тесты. - person dan.m was user2321368; 04.12.2019
comment
Настройка режима форка в Intellij не приводит к параллельному выполнению теста. Он запускает новую JVM для тестов, что увеличивает задержку теста; но это очистит память между тестами, что может быть проблемой для приложений, использующих одноэлементные классы или другие долгоживущие классы. - person Scott Boring; 01.01.2021
comment
Я не думаю, что это приводит к параллельному выполнению текста, для меня это даже замедляет выполнение теста в 5 раз. Я думаю, что разветвленный режим предназначен для запуска тестов отдельно в разных JVM, но не для ускорения выполнения теста! - person Nfff3; 31.01.2021

Если вы используете JUnit4, вы можете попробовать этот плагин: https://plugins.jetbrains.com/plugin/12959-junit4-parallel-runner

Параллельный запуск тестов так же прост, как щелчок по зеленому треугольнику рядом с

  • class -> все тестовые методы в классе выполняются параллельно
  • package -> все классы в пакете запускаются параллельно

ОБНОВЛЕНИЕ. Вы можете попробовать этот плагин, работает с JUnit4, JUnit5 и TestNG: https://plugins.jetbrains.com/plugin/16229-unit-test-parallel-runner

person Csa77    schedule 15.09.2020