2013-10-02 6 views
2

Я пытаюсь использовать селеновую сетку с Дженкинсом. Когда я запускаю Selenium Hub и Node с серверным автономным 2.35.0 банком, все работает отлично. Однако, не работает, когда я использую Jenkins Selenium Grid Plugin в качестве концентратора.Selenium + Jenkins: Отсутствует заголовок местоположения

появляется ошибка здесь:

водитель = новый RemoteWebDriver (новый URL (gridURL), возможности);

сетки URL является "http://localhost:4444/wd/hub"

возможности заключается в следующем:

DesiredCapabilities capabilities = DesiredCapabilities.firefox(); 
capabilities.setPlatform (Platform.LINUX); 

Это исключение:

org.openqa.selenium.WebDriverException: Error forwarding the new session new session request for webdriver should contain a location header with the session. 
Command duration or timeout: 25.28 seconds 
Build info: version: '2.35.0', revision: '8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-08-17 12:46:41' 
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '3.8.0-31-generic', java.version: '1.7.0_40' 
Driver info: org.openqa.selenium.remote.RemoteWebDriver 

Как концентратор я использую Дженкинс Селен Plugin Version 2.3 Как Узла Я использую selenium-server-standalone-2.35.0.jar.

Когда я открываю http://localhost:4444/ с браузером, он говорит: You are using grid 2.29.0 Я скачал Селен-серверную автономный-2.29.0.jar и дайте ему поработать в качестве концентратора. Узел по-прежнему является версией 2.35.0. Тогда у меня такое же исключение. Я пробовал узел и концентратор с 2.29.0, но кажется, что мой Firefox слишком новичок в этом.

Я искал несколько часов, но ничего не нашел об этой ошибке.

Edit: Плагин, который устанавливается Дженкинс, от 18 августа 2013: https://wiki.jenkins-ci.org/display/JENKINS/Selenium+Plugin

Разработчик обновил плагин через два дня 20 августа 2013: https://github.com/jenkinsci/selenium-plugin/commit/316eccdef608e855863cf04b1c240fa2c7b8b762

Я не» t знаю, вызывает ли это мои ошибки, но это возможно. Я еще не знаю, как это сделать, но я попытаюсь создать собственную версию плагина из исходного кода на github.

+0

Не могли бы вы показать нам свой тестовый класс? а именно, в любое время, когда создается WebDriver' – sircapsalot

+0

. Я не уверен, правильно ли я вас понимаю. WebDriver получает экземпляр непосредственно перед тем, как указанный код обрезается. Я отлаживал код, и исключение возникает, когда я пытаюсь создать новый RemoteWebDriver. –

ответ

2

теперь я знаю определенно, в чем проблема:

Как я уже упоминал выше узла Селен версии 2,35. Текущий плагин Jenkins Selenium - это версия 2.3, в которой используется Selenium 2.29. Это вызывает ошибку.

Теперь я использовал Selenium Version 2.29 как узел. И установлен Firefox версии 18. Теперь все работает нормально. Я связался с разработчиком, и я пытаюсь создать текущую версию плагина из git. На данный момент без успеха, но я думаю, что я открою для этого еще один поток.

Благодарим за помощь.

+0

Bugreport подана здесь: https://issues.jenkins-ci.org/browse/JENKINS-18102 –

0

Эта ошибка означает, что у вас нет узлов, подключенных к концентратору. Hub - UP и принимает соединения, но не может перенаправить запрос на узел.

Убедитесь, что у вас есть узлы, подключенные к вашему концентратору. Вы можете сделать это -

java -jar selenium-server-2.29.0.jar -role node -hubUrl http://ip-of-hub:4444/wd/register 

Эта команда может быть неточными. Обратитесь к официальному документу.

+0

является узлом вашего локального компьютера? – sircapsalot

+0

Спасибо за ваш ответ. Я подключил узел к концентратору. Команда: 'java -jar selenium-server-standalone-2.35.0.jar -role node -hub http: // localhost: 4444/grid/register' См. Wiki: [link] (https://code.google.com/p/selenium/wiki/Grid2) Я вижу концентратор в плагине Jenkings Selenium. –

+0

Да, на данный момент это мой локальный компьютер. Все работает локально. –

1

Вы можете обновить версию селена в плагине Дженкинс, замените 2.29.0 с 2.39.0 в указанной ниже пути:

[JenkinsFolder] \ Plugins \ селеном \ WEB-INF \ Lib

Здесь вы найдете старую банку. замените его последней банкой. Будет хорошо работать.

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