2016-03-11 5 views
5

Я сталкиваюсь с ошибкой Error: no display specified при запуске тестов игровой среды в Jenkins на сервере FreeBSD. Поэтому каждый раз я сталкиваюсь с тайм-аутБегущий безголовый firefox Xvfb с Дженкинсом для запуска тестов на селен

org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox

Дженкинс:

1) Xvfb плагин установлен

2) Play Framework установлены

Тесты написаны с использованием библиотеки селенида и селенида модуль для игровой платформы.

Xvfb сконфигурирован и включен в конфигурации заданий.

Работа вывода консоли: Конфигурация

Checking out Revision 3f485bd2e3dbcfa058fc19f89ab18020e36707d8 (origin/trunk) 
... 
Xvfb starting$ /usr/local/bin//Xvfb :1 -screen 0 -fbdir /usr/local/jenkins/xvfb-9-786185694297443042.fbdir 
... 
Command detected: clean 
Command detected: deps --sync 
Command detected: precompile 
Command detected: auto-test 
[YalsTests] $ /srv/java/play/play clean 
... 
~ using java version "1.8.0_72" 
[YalsTests] $ /srv/java/play/play auto-test 
~ 14 tests to run: 
~ 
~ selenium/front/CorrectInput...   org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output: 
Error: no display specified 

    at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:113) 
    at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:271) 

Работа:

[X] Start Xvfb before the build, and shut it down after. 
Xvfb specific display name 1 
Xvfb display name offset 0 

Invoke Play Framework  
Command set  Play 1.x 
Goals 
    Clean project [clean] 
    Custom parameter 
     Custom command deps --sync 
    Precompile all Java sources and templates [precompile] 
    Automatically run all application tests [auto-test] 

ответ

1

Задачи селеном необходимо знать DISPLAY, что он должен подключаться. Вы можете установить его, например. как переменная окружения (не забудьте экспортировать его, если вы сделаете это в .profile)

export DISPLAY=:10 

Это для Баш, другие оболочки, возможно, потребуется процесс 2 шага:

DISPLAY=:10 
export DISPLAY 

You можно также указать переменную в командной строке перед командой:

DISPLAY=:10 java -jar mySelenium.jar 
0

Вы могли бы избежать всех этих проблем с помощью Selenoid проекта, который начинается обезглавленные браузеры параллельно в Docker контейнеров. Контейнерные изображения создаются с учетом совместимой версии webdriver и браузера. Они также включают в себя шрифты, flashplayer и т. Д. Просто выберите один из уже существующих images и запустите свои тесты. Нет необходимости устанавливать Java для запуска тестов Selenium.

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

  • Нет связанных вопросов^_^