2017-02-22 50 views
0

У меня есть тестовая структура, использующая Selenium WebDriver, cucumber-jvm, java. У меня есть файл свойств с BASE_URL и другие необходимые, чтобы я мог правильно установить все в своей среде IDE. Но как насчет командной строки?Selenium - параметр параметрирования огурца maven

Как я могу решить параметризацию maven в случае другой среды? Я хотел бы использовать что-то вроде этого, чтобы установить среду и теги в файлах функций.

МВН чистый тест -uat - @ тест

Было бы важно для меня, потому что мне нужно использовать TeamCity для запуска этих тестов.

Спасибо!

ответ

0

Это ответ (Я): Надеюсь, это поможет другим.

Вы можете создать несколько профилей в pom.xml, установить свойства id, и вы можете указать все, что хотите. в этом случае base.url задается в профиле.

Добавьте следующее к помпе, и вы можете достичь этого свойства с помощью метода System.getproperty().

<plugin> 
     <artifactId>maven-surefire-plugin</artifactId> 
     <configuration> 
      <systemProperties> 
       <base.url>${base.url}</base.url> 
      </systemProperties> 
     </configuration> 
</plugin> 
1

Вы можете передать параметры cmd с помощью переключателя -D, например mvn clean test -Dsomeproperty=uat, если у вас есть someproperty переменная в вашем процессе сборки или что-то в этом роде. Трудно точно сказать, потому что мы не можем видеть ваш код. Подробнее см. Здесь maven command line options.

+0

Так что, если я не ошибаюсь, мне нужно удалить свой файл свойств и создать maven-профиль вместо этого? Да, я не хочу копировать-вставлять код, потому что структура довольно большая. Я использую свойствоReader с потоком ввода, чтобы получить URL-адреса для каждой среды. Но я предполагаю, что с параметрами -D я не могу добраться до файла свойств. – brobee

+0

Не могу сказать, потому что я не знаю, как выглядит ваш файл свойств. Как ваши рамки определяют, какую среду использовать, как вы устанавливаете этот параметр? – acikojevic