2013-07-29 5 views
6

У меня есть тест selenium webdriver, преобразованный в проект maven, который я хочу запустить через xvfb на Jenkins.Как изменить порт, который Webdriver Firefox подключается к localhost?

Проблема с отображением дисплея, но я хотел бы попробовать что-то еще и изменить порт, например.

Это ошибка, я получаю:

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

Error: no display specified

И это мой код:

File ffExe = new File("/usr/bin/firefox"); 
FirefoxBinary ffox = new FirefoxBinary(ffExe); 
ffox.setEnvironmentProperty("DISPLAY", ":21"); 
WebDriver driver = new FirefoxDriver(ffox, null); 

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

ответ

2

Существует системное свойство -webdriver.firefox.port, которое может быть ответом на запрос yoru. Он указан на wiki - http://code.google.com/p/selenium/wiki/FirefoxDriver, но для этого не существует документации. Вы можете попробовать и сообщить нам, если это работает :)

+0

Можете ли вы показать мне пример использования «webdriver.firefox.port» в коде? На странице, с которой вы связались, как только они говорят о setProperty, а затем они говорят о setPreference и Im получают путать –

+0

System.setProperty ("propertyname", "propertyvalue") – Akbar

+0

Спасибо! Попробуйте его –

2

Проблема не в том, что он не может подключиться к этому порту, а, скорее, во второй части ошибки, что в Дженкинсе нет дисплея. Вот почему настройка дисплея для Firefox, вероятно, не работает.

Узнайте, какие у вас настройки дисплея, набрав в терминале env и сняв номер, присвоенный переменной DISPLAY. Например, DISPLAY:1.0.

Далее вам нужно установить отображаемую переменную в Hudson/Jenkins. Перейдите к целевой странице Jenkins, затем нажмите Управление Jenkins> Управление узлами> Мастер> Настройте. Установите флажок «Окружающая среда», затем установите DISPLAY в поле имени, а значение - примерно на наш пример :1.0.

Кроме того, возможно, вам придется отключить управление доступом xhost с помощью xhost + в терминале.

+0

Спасибо, я пробовал все, что я читал в google об этой вещи, пока ничего не сработало, в вашем посте есть какие-то новые вещи, и я попробую их сегодня на работе. Не могли бы вы взглянуть на мою другую связанную тему? http://stackoverflow.com/questions/17925498/shifted-webdriver-test-from-firefox-to-chrome-jenkins-still-thinks-its-firefox –