Со временем можно настроить maven surefire для выполнения тестов jUnit и тестов TestNG в одной сборке. Я не буду раскрывать причины, по которым я это делаю (хорошо, подсказка: testNG - это стандартная среда, но для некоторых фреймворков, таких как jnario, требуется jUnit).Как правильно выполнить maven surefire выполнить JUnit и TestNG?
Общий способ сделать это заключается в настройке безошибочный плагин следующим образом:
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>${surefire.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-testng</artifactId>
<version>${surefire.version}</version>
</dependency>
</dependencies>
</plugin>
Это работает очень хорошо, JUnit тесты и тесты TestNG получить казнены.
BUT - теперь я вижу, что testNG также пытается выполнить тесты jUnit (и, возможно, наоборот) - без успеха, конечно, потому что он не увидит ни одной из своих аннотаций, но похоже, - указывает тесты на «пройденный» ... в любом случае, некоторые средства отчетности не показывают теста в тестах jUnit, если я не комментирую вторую запись зависимостей.
Есть ли лучший способ настроить surefire, чтобы тесты из обеих фреймворков выполнялись ТОЛЬКО их тестовыми бегунами?
Перекрестная ссылка на список Maven-Users-List: http: //maven.40175.n5.nabble.com/maven-surefire-selection-providers-td5764817.html –