Перейти к содержимому

Фотография

Jenkins + Maven + Selenium + Java как передать параметр из дженкинса


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 7

#1 Tigra

Tigra

    Новый участник

  • Members
  • Pip
  • 39 сообщений
  • Город:Минск


Отправлено 10 марта 2014 - 20:51

Тесты орнагизованы в виде Maven проекта. Передача параметров из pom файла в тесты организована (используем <profile> и <properties>).
Запускает их дженкинс командой mvn test -P <имя профиля>.

В тесты нам нужно передать число, которое будем интерактивно менять (т.е. без изменений самого pom.xml файла).
Можно ли как-то передать такой параметр из самого jenkins'а (например как java params)?


  • 0

#2 biomaks

biomaks

    Постоянный участник

  • Members
  • PipPipPip
  • 171 сообщений
  • Город:Москва


Отправлено 11 марта 2014 - 06:06

Можно создать параметризованную джобу в дженкинсе и передавать параметр в мавен через -Dparameter=value


  • 0

#3 Tigra

Tigra

    Новый участник

  • Members
  • Pip
  • 39 сообщений
  • Город:Минск


Отправлено 11 марта 2014 - 09:34

Можно как-то так прописать в Goals?

      mvn test -P test -Dname=10

 

И как правильно вызвать это параметр? (в pom.xml? в .properties? в java class?)


  • 0

#4 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 11 марта 2014 - 09:40

System.getProperty("name_property");
//name_property - это -  -Dname_property=

  • 0

#5 biomaks

biomaks

    Постоянный участник

  • Members
  • PipPipPip
  • 171 сообщений
  • Город:Москва


Отправлено 11 марта 2014 - 09:48

Можно как-то так прописать в Goals?

      mvn test -P test -Dname=10

 

И как правильно вызвать это параметр? (в pom.xml? в .properties? в java class?)

если в джобе создать параметр name со значением 10, то в команду запуска теста параметр можно передать так: 

mvn test -P -Dname=$name

  • 0

#6 Tigra

Tigra

    Новый участник

  • Members
  • Pip
  • 39 сообщений
  • Город:Минск


Отправлено 11 марта 2014 - 10:35

 

Можно как-то так прописать в Goals?

      mvn test -P test -Dname=10

 

И как правильно вызвать это параметр? (в pom.xml? в .properties? в java class?)

если в джобе создать параметр name со значением 10, то в команду запуска теста параметр можно передать так: 

mvn test -P -Dname=$name

Как добавить параметр джобу? На configuration страничке ничего похожего не вижу. Может надо установить какой-то плагин в jenkins?

И как все-таки вызвать этот параметр в самих тестах? (если передать в том виде, в котором Вы описали)


  • 0

#7 vmaximv

vmaximv

    Опытный участник

  • Members
  • PipPipPipPip
  • 350 сообщений

Отправлено 11 марта 2014 - 11:12

И как все-таки вызвать этот параметр в самих тестах? (если передать в том виде, в котором Вы описали)

Речь о http://docs.oracle.c...nt/sysprop.html


  • 0

#8 Tigra

Tigra

    Новый участник

  • Members
  • Pip
  • 39 сообщений
  • Город:Минск


Отправлено 11 марта 2014 - 16:11

Поставила в джекинсе EnvInject Plugin. На configuration page для job'a появился Build Envirement раздел. В поле Properties Content прописала 'amount=10'.

В Goals для Build section 'mvn test -Damount=$amount'.

А в самих тестах воспользовалась System.getProperty("amount");

И все получилось. Всем спасибо за помощь.  


  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных