2016-10-05 4 views
0

У меня возникли проблемы с сохранением сервера selenium, работающего на рабстве jenkins. Я использовал следующий код для запуска селенаКак поддерживать работу селена на сервере jenkins

java -jar /opt/selenium-server-standalone-2.53.0.jar -Dwebdriver.chrome.args="--use-gl=osmesa" -Dwebdriver.chrome.driver=/usr/bin/chromedriver -Dwebdriver.chrome.bin=/usr/bin/google-chrome -log /var/log/selenium/selenium.log > /var/log/selenium/output.log 2> /var/log/selenium/error.log & echo $! > /tmp/selenium.pid 

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

иногда я получаю следующее сообщение об ошибке при запуске селена тесты

tests/npw Connection refused! Is selenium server started? 

tests/npw { sessionId: null, 
status: 13, 
state: 'unhandled error', 

value: 
{ message: 'Read timed out', 
suppressed: [], 
localizedMessage: 'Read timed out', 
cause: null, 
class: 'java.net.SocketTimeoutException', 
hCode: 1232868082, 
screen: null }, 
class: 'org.openqa.selenium.remote.Response', 
hCode: 1242507638 } 

ответ

0

Одна вещи, которую вы можете сделать, это попытаться запустить сервер Selenium в узле Дженкинс, чтобы отделить от других возможных заданий и функциональных возможностей, проделанных мастер. Настройте его как услугу и настройте для автоматического запуска при запуске сервера.

Для Centos ОС: Создайте файл в /etc/systemd/system/selenium-node.service

Добавить это:

[Unit] 
Description=Run a selenium node 

[Service] 
ExecStart=/usr/bin/java -jar /route/to/selenium/selenium-server-standalone-2.52.0.jar -role node blablabla 
Restart=on-abort 

[Install] 
WantedBy=multi-user.target 

И бежать:

sudo systemctl daemon-reload 
sudo systemctl start selenium-node.service 

Таким образом, он будет автоматически перезагружен и будет работать всегда.

0

Сначала вы должны убедиться, что команда выполнена правильно.

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

Смежные вопросы