У меня есть мультимодульный проект Maven. В корневой pom.xml, я добавил следующие ...Как запустить модульное тестирование в параллельном режиме во всех модулях с помощью Maven?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<parallel>methods</parallel>
<threadCount>100</threadCount>
</configuration>
</plugin>
Команда mvn test
заставит каждый модуль должен быть построен (при необходимости), а затем тесты для этого модуля будут работать параллельно. Как только все тесты будут выполнены, Maven начнет работу над следующим модулем. Maven будет работать на каждом модуле последовательно.
Внутри, Eclipse IDE Я могу запустить TestNG против набора под названием testng.xml
. Этот файл указывает, что все пакеты должны запускаться параллельно. Это заставляет TestNG запускать все методы тестирования через все модули параллельно. Это именно то, что я хочу сделать, но я не уверен, как это сделать. Преимущество этого заключается в том, что все тесты выполняются в 1 процессе и могут совместно использовать состояние между ними. Это совместное использование частот значительно ускоряет тесты. Примечание. Я думал об использовании ant для выполнения команды, но тогда я не был уверен, как указать путь к классам с зависимостями из репозитория Maven.
mvn -T 8 test
позволит параллелизм, но из-за зависимостей между модулями я не получаю все тесты, выполняемые параллельно. Я был бы в порядке, выполнив сначала mvn compile test-compile -DskipTests=true
, а затем запустив mvn -T 8 test
, если это будет проходить все тесты параллельно.
Редактировать: Пробные испытания представляют собой смесь тестов на единицу и интеграцию. С опцией -Dgroups=
я могу выбрать, какой набор тестов выполняется.
Вы пробовали простую сборку parrallel? Подобно 'mvn -T 8 test' – KeatsPeeks
Параллельная сборка должна помочь, хотя вы не можете протестировать модуль, пока не будут созданы все его зависимости. –
Являются ли эти тесты модульными испытаниями или интеграционными тестами ... я бы принял модульные тесты, что означает, что они разделены ... – khmarbaise