Я хочу запустить набор тестов на основе mvn -Dplatform
arg в сочетании с -Denv
arg.Я не уверен, как правильно выбрать наборы или, может быть, есть лучший способ запустить определенные тесты?
Я знаю, что вы можете запускать наборы, такие как -DsuiteFile=""
(пример: Как запустить определенный TestNGнабор из нескольких наборов с использованием Maven в Jenkins ).Но я не хочу запускать слишком сложные аргументы, как это.Я хочу, чтобы менеджер / разработчики немного упростили его запуск: "mvn clean test -Dplatform=desktop/mobile
".
У меня есть $ {env}. $ {Platform} .property файлы, подобные этому:
url=https://url.com
gridUrl=griurl
username=ab12345
password=password
phoneNumber=9999999999
browser=
browserVersion=
env=test
platform=
Иерархия пакетов:
<suite name="Parent suite">
<suite-files>
<suite-file path="debug.xml"/>
<suite-file path="testMobile.xml"/>
<suite-file path="testDesktop.xml"/>
</suite-files>
</suite>
И на данный момент у меня есть testAll.xml
, как это (этот набор имеет мобильные тесты просто для комфорта и связан с настольными тестами ):
<suite name="Basically all tests for web browser">
<parameter name="browser" value="chrome"/>
<parameter name="browserVersion" value="74"/>
<test name="TestDesktop">
<parameter name="platform" value="desktop"/>
<parameter name="baseUrl" value="https://url.com"/>
<groups>
<run>
<include name="A/B"/>
</run>
</groups>
<packages>
<package name="desktop.signup"/>
<package name="desktop.authorization"/>
</packages>
</test>
</suite>
testMobile.xml
просто имеют связанные мобильные классы.
Я хочу запустить определенные наборы, зависящие от аргумента mvn, такие как platform или environment .Было бы здорово, если бы вы могли выбирать среди люксов с этими двумя аргументами.Как с аргументом -Dplatform = mobile Я хочу запустить пакет мобильных приложений или рабочий стол, и если val равен нулю, то оба, например.Возможно ли это?