Как я могу запускать все тесты из двух или нескольких модулей IDEA сразу?
Я использую много модулей, и важно часто запускать все модульные тесты, и когда я выбираю более одной папки для запуска, в контекстном меню больше нет опции "запустить".
Как я могу запускать все тесты из двух или нескольких модулей IDEA сразу?
Я использую много модулей, и важно часто запускать все модульные тесты, и когда я выбираю более одной папки для запуска, в контекстном меню больше нет опции "запустить".
Лучший способ: (редактировать через 3 года)
Существует даже лучший способ добиться этого.
Выберите меню "Выполнить" → "Редактировать конфигурации...". Нажмите зеленый плюс в левом верхнем углу и выберите JUnit.
Выберите "Test kind" в "Pattern" и введите это регулярное выражение точно так, как вы его видите: ^(?!.*IT$).*$
(начинается с каретки ^
и заканчивается долларом $
). Это регулярное выражение говорит: все тесты, которые не заканчиваются с ИТ в их имени.
Выберите "Поиск тестов" в "В целом проекте". Рабочий каталог должен быть установлен в рабочий каталог верхнего модуля (он должен быть установлен по умолчанию).
Введите имя для своего теста, например "Все модульные тесты". Я также предпочитаю отмечать опцию "Поделиться", поэтому эта конфигурация не исчезнет позже. Нажмите "Применить" и "ОК".
Вы можете поэкспериментировать с этим регулярным выражением в соответствии с вашими потребностями.
Оригинальный ответ:
Это выполнимо, хотя это не удобно.
test/java
и "Запустите все тесты". Он создает тестовую конфигурацию.Таким образом вы запускаете конфигурации в последовательности, и каждая конфигурация получает новую вкладку. Тем не менее, лучше, чем ничего.
Вам нужно создать "Run Configuration":
Для меня оба решения не работали или не срабатывали.
Для меня у меня 3 модуля. Мои зависимости модулей выглядят так:
Презентация → Домен → Данные
Я просто хотел выполнить все тесты вместе. Поэтому я придумал подход "Зависимости от всех модулей"
Мои настройки выглядят следующим образом:
Самым простым способом, который я нашел, было выбрать все модули, щелкнуть их правой кнопкой мыши и выбрать запуск всех тестов. Это создаст конфигурацию под названием "Весь проект", которую вы сможете запустить снова в любое время.
Я нашел это лучше, чем принятый ответ, потому что он запускает модульные тесты отдельно для каждого модуля. Если ваши тестовые примеры используют специфичные для модуля ресурсы во время его выполнения, тогда принятый ответ наилучшим образом не сработает.
Выбрать все модули
Щелкните правой кнопкой мыши и выберите запуск всех тестов.
Получить новую конфигурацию запуска
Еще один не очень очевидный случай - когда требуется охват кода более чем для одного проекта. Наивным решением было бы выбрать несколько проектов и запустить в них все модульные тесты одновременно. Как выясняется, модульные тесты могут завершиться неудачей, если путь к классу изменится, а IntelliJ будет иметь только одну запись пути к классу на конфигурацию прогона. В этом случае последовательного запуска модульных тестов для проектов вполне достаточно. Это потому, что в конце каждого прогона IntelliJ (2017.2.5 Community Edition) спрашивает, должен ли собранный охват заменить или должен быть добавлен к ранее собранной статистике покрытия.
Это сработало для меня в проекте с несколькими модулями.
Создайте новую конфигурацию запуска/отладки JUnit. Вид теста: "Все в пакете" Поиск тестов: "Весь проект"
Вам также нужно будет указать рабочий каталог.