Вопрос:
Как я знаю, мы можем запускать тесты через maven, например:
Содержание
Для классов:mvn clean -Dtest=Class1,Class2 test Для групп:mvn clean -Dgroup=groupName test
Но я хочу запустить тесты на основе <test> указанного в testng.xml через команду mvn. Я имею в виду, какую команду мне нужно выполнить для выполнения тестов Sanity и Regression. Пожалуйста, обратитесь к следующему тесту testng.xml
<!DOCTYPE suite SYSTEM «http://testng.org/testng-1.0.dtd» > <suite name=»Suite1″ verbose=»1″ > <test name=»Sanity» > <packages> <package name=»org.test.c» /> </packages> </test> <test name=»Regression»> <packages> <package name=»org.test.a»/> <package name=»org.test.b»/> </packages> </test> </suite> Заметка:
Я добавил данные suiteXmlFiles под тегом packageXmlFiles файла pom.xml
Ответ №1
Чтобы получить полный список опций, доступных для цели тестирования maven, используйте команду:
mvn surefire:help -Ddetail=true -Dgoal=test
Вы можете указать тест по имени файла
mvn test -Dtest=MyTest
и по имени группы
mvn test -Dgroups=groupName
Вы можете указать список xml файлов пакета для использования
mvn test -DsuiteXmlFiles=testng.xml
Справка по этой опции указывает
Этот параметр игнорируется, если указан параметр теста (позволяющий запускать один тест вместо целого набора).
Рассматривая список вариантов и учитывая это последнее замечание, мы можем заключить, что функция, требующая (выбор теста, определенного в файле testng.xml из командной строки), не реализована в maven 3.0.4.