Значение свойства skipITs
при переопределении в командной строке, по-видимому, игнорируется maven при использовании в сочетании с -Dit.test=full.Classname
. Указанный отказоустойчивый тест не будет запущен (случай один).Является ли изоляция отказоустойчивых и надежных пробегов друг от друга с использованием подхода пропуска?
В отличие от этого спецификатора skipITs
без переключателя it.test
приводит к запуску существующих отказоустойчивых тестов (случай два).
Предыстория: Я пытаюсь изолировать тесты безотказной проверки при проверке отказоустойчивых тестов, либо выполняя их оба типа, либо только один из них. В Maven звонки:
mvn -Pintegration -DskipTests=true -DskipITs=false -Dit.test=full.Classname verify
в первом случае и:
mvn -Pintegration -DskipTests=true -DskipITs=false verify
во втором.
Соответствующая конфигурация (pom.xml, только фрагменты) являются:
<properties>
<skipTests>false</skipTests>
<skipITs>false</skipITs>
</properties>
(те по умолчанию) и
<profiles>
<profile>
<id>integration</id>
<build>
<plugins>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
<execution>
<id>custom<id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<skipTests>${skipITs}</skipTests>
<skip>${skipITs}</skip>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
ли вы замечаете, что слишком или вы в конце концов, нашли лучший рабочий подход?
Почему бы не использовать настройки по умолчанию, предоставляемые плагинами. '-DskipITs = true', чтобы пропустить интеграционные тесты maven-failafe-plugin и' -DskipTests = true', чтобы пропустить модульные тесты maven-surefire-plugin. Почему вы определяете свойства? – khmarbaise
@khmarbaise '-DskipTests = true' также предотвратит выполнение плагином Failsafe любых тестов. OP хочет пропустить Surefire, но запустить Failsafe. – hzpz