Как запустить несколько тестовых классов или методы тестирования с помощью Maven?
Чтобы запустить все тесты Maven, мы можем использовать:
mvn clean test
Если мы хотим запустить определенный тестовый класс, мы можем использовать:
mvn clean test -Dtest=className
Если мы хотим запустить определенный метод из определенного тестового класса, мы можем использовать:
mvn clean test -Dtest=className#methodName
Но я хочу запустить:
- несколько тестовых классов (не все, что принадлежит
src\test\java
)
- несколько методов тестирования из определенного тестового класса (не все тестовые методы конкретного тестового класса, принадлежащие
src\test\java
)
Есть ли команды Maven, с помощью которых я могу достичь выше двух?
Ответы
Ответ 1
Если вы используете плагин surefire, вы можете использовать следующие параметры.
Для нескольких классов, которые вы можете использовать,
mvn -Dtest=TestSquare,TestCi*le test
Для нескольких методов в одном классе вы можете использовать
mvn -Dtest=TestCircle#testOne+testTwo test
Обратитесь docs
Ответ 2
Чтобы заставить это работать (по крайней мере, из командной строки Windows), мне пришлось добавлять кавычки вокруг параметров теста.
mvn -Dtest="TestSquare,TestCi*le" test
(используя maven-surefire-plugin: 2.17)
Ответ 3
Если вы хотите запустить все тестовые кланы из подкаталога, например:/doc/Вы можете использовать команду:
mvn -Dtest=*/doc/* test
Ответ 4
Вы можете добавить несколько классов в TestNG со своими группами, например
<groups>
<run>
<include name = "checkintest" />
<include name = "videoSpider" />
<include name = "xmlTCUploader" />
<include name = "PALLogin" />
</run>
</groups>
<classes>
<class name="SeleniumUC"/>
<class name="PALTestCasesSuite"/>
</classes>
После этого вы можете использовать эти группы с Maven, как -
mvn -Dgroups=PALLogin test