Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

Jenkins: как установить несколько версий браузеров и запустить из в Дженкинс?

ci
jenkins
firefox
chrome
webdriver
python
Теги: #<Tag:0x00007fedb97cae08> #<Tag:0x00007fedb97cac28> #<Tag:0x00007fedb97caa70> #<Tag:0x00007fedb97ca7c8> #<Tag:0x00007fedb97ca638> #<Tag:0x00007fedb97ca430>

#1

Как установить несколько версий браузеров и запустить из в Дженкинс?

Мое задание заключается в том, что нужно автоматизировать тесты и сделать CI в Jenkins на разных версиях браузеров: Chrome и Firefox.

Как установить несколько версий браузеров через Дженкинс на виртуальной машине и запустить их?


(Roy Obenon) #2

используйте selenoid (там с коробки поддержка многих браузеров есть, Вам хватит для задания) + параметризованные тесты и вперёд! Сделайте так же параметризованную джобу с Choice parameters где будет выбор на каких браузерах можно запускать тесты и дело в шляпе :wink:


#3

спасибо за ответ)

я понимаю то, что вы написали, но как это делать навыков нет.
про selenoid слышал, но нет опыта работы с ним.

про Choice parameters найти бы где-нибудь подробную инструкцию с описанием…)


(Alexandr D ) #4

Не конкретно про python, но там наверняка тоже тестовый фреймворк умеет принимать параметры на вход.

Так вот когда вы запускаете тесты, вы передаете туда параметры - браузер/стартовый урл (например) и прочее.

А в фабрике браузеров уже смотрите - если пришёл параметр Browser=Chrome, например, то создаём браузер - хром.

Ну и choice parameter при сборке проекта - выбор какой браузер использовать.


(Roy Obenon) #5

тут https://github.com/aerokube/selenoid есть инфа как сделать + видосы! там разворачивать 5 мин делов (без опыта), остальное тесты сделать и запускать их через Jenkins, хотя по началу отлаживайте их через IDE


#6

спасибо за ответ!

вопрос к вам: при запуске этой команды

 $ curl -s https://aerokube.com/cm/bash | bash \
    && ./cm selenoid start --vnc --tmpfs 128

выдаёт ошибку:

bash:  : No such file or directory
(23) Failed writing body

не знаете в чем может быть причина?

и еще вопрос: в инструкции написано

That's it! You can now use Selenoid instead of Selenium server. Specify the following Selenium URL in tests:

http://localhost:4444/wd/hub

но я нигде вроде не указываю Selenium URL в тестах… где его нужно указать??


(Roy Obenon) #7

на счет ошибки не знаю, нужно разбираться, ибо абстрактную проблему в вакууме трудно решать :smile: На счет хаба то нужно будет его указывать либо в коде либо как дефолт параметр в дженкинсе


#8

а где указывать в коде? или в дженкинсе?
можете рассказать по-подробнее. у меня очень мало опыта с автоматизированным тестированием.


(Roy Obenon) #9

для этого документация есть


(Fiodar Motin) #10

Указывать там где вы драйвер прописываете.
Пример на selenide

    @BeforeClass
    public void setUp() {
    Configuration.browser = "chrome";
    Configuration.remote = "YOUR_URL"; // тут ваш url до remote сервера
}

Но как по мне так дженкинс вам пока не надо, разберитесь просто как запускать с remote и продолжайте изучайте доки, когда не будет вопросов “но я нигде вроде не указываю Selenium URL в тестах… где его нужно указать??” тогда можно уже заниматся jenkins


#11

Если кто-то столкнется с подобной темой, вот нашел видео, где все подробно показывается: