Webdriver Невозможно подключиться к хосту 127.0.0.1 через порт 7055 через 45000 мс
313165 просмотра
29 ответа
У меня есть коробка, где я запускаю тесты. Кажется, что Дженкинс запустит ssh и выполнит команды, описанные в конкретной работе, которая выполняется.
Здесь я пытаюсь запустить свои тесты Selenium Webdriver, но он говорит мне, что у меня есть ошибки при запуске Firefox. Конечная идея - полностью запустить веб-тесты на этом поле, а также сделать несколько скриншотов с ошибками.
Я использую selenium-java-2.25.jar, Firefox 10, ОС Linux.
Самое смешное, что я могу ssh войти вручную в коробку, временно скопировать волшебный cookie-файл от другого пользователя на коробке (чтобы получить X-туннель), выполнить команду export DISPLAY=mydisplay:1.0
, а затем запустить мои тесты на селен, используя ant. И это вызовет Firefox и тесты просто отлично.
Здесь есть разные темы, которые, похоже, имеют одну и ту же проблему, и я думаю, что я пробовал большинство из них. Вот что я сделал:
Перезагрузите коробку, войдите снова с VNC.
Поместил bash-скрипт в Jenkins для запуска перед запуском тестов на селен. Сценарий Bash в основном просто делает
export DISPLAY=mydisplay:1.0
. Это также выполняетxclock
. Это работает, поскольку я вижу, как xclock отображается в VNC.Iptables был отключен
Firefox правильно расположен в / usr / bin / firefox
sshd_config показывает наличие X11Forwarding как true.
Предположительно, понижение версии Firefox помогло некоторым людям, но я не хочу этого делать. Вебдрайвер должен поддерживать FF 10 в любом случае.
Однако ни одно из вышеперечисленного не решает проблему.
Не похоже, что порт 7055 на localhost даже существует:
netstat -an | grep 7055
- Ничего не печатает
Вот что говорит мой / etc / hosts:
1 127.0.0.1 localhost.localdomain localhost
2 ::1 localhost6.localdomain6 localhost6
Возможно, это как-то связано с localhost: 7055 не существует? Я не уверен, куда идти отсюда. Тем не менее, почему вывод ошибок говорит, что он ищет, display: :0.0
когда я указал mydisplay:1.0
?
И наконец вывод ошибки я получаю:
[testng] org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Error: cannot open display: :0.0
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Error: cannot open display: :0.0
[testng]
[testng] at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:109)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:245)
[testng] at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:109)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:185)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:178)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:174)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:92)
[testng] at com.test.webtest.browser.BrowserFactory.createBrowser(BrowserFactory.java:24)
[testng] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[testng] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[testng] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[testng] at java.lang.reflect.Method.invoke(Method.java:601)
Автор: user1636922
Источник
Размещён: 13.11.2019 11:33
Ответы (29)
91 плюса
Не знаю, решили ли вы эту проблему, но я только что решил ту же проблему с другой стороны.
Похоже, что Selenium и Firefox испытывают затруднения в общении друг с другом - я подозреваю, что Firefox «эволюционирует» изменения в ряде выпусков, поэтому обратная и прямая совместимость не всегда гарантируется, и несовместимость всегда вызывает одну и ту же ошибку.
Моя проблема началась, когда я перешел с FF 15 на FF 16. При работе в Ubuntu это происходит автоматически, как и другие обновления, но я считаю, что это было критическое изменение.
Проблема была решена путем перехода с Selenium 2.24.1 на Selenium 2.25.0
Поскольку изменение селена - это просто загрузить файл jar и запустить его вместо старого, стоит попробовать это как быстрое и простое средство устранения неполадок - если это не поможет, просто переключитесь обратно. В вашем случае я не уверен, какую версию Selenium попробовать, но я думаю, что 2.24 должен работать с FF 10.
Еще одна проблема, которую я обнаружил в прошлом, заключается в том, что Firefox не будет работать от имени пользователя root в Ubuntu. Это происходит, если Selenium работает как служба или, возможно, запускается из сценария bash или задания cron. Это может объяснить, почему это работает для вас, но не для Дженкинса.
Автор: user1771179 Размещён: 24.10.2012 12:2314 плюса
У меня была похожая проблема. Может быть, этот ответ вам тоже поможет.
Похоже, у вас есть две разные ошибки:
Unable to connect to host 127.0.0.1 on port 7055
Error: no display specified
Причина Unable to connect
ошибки в том, что версия Selenium Server не знает, как работать с более новой версией Firefox. Вам необходимо загрузить более новую версию Selenium Server, которая поддерживает более новую версию Firefox.
Причина Error: no display specified
ошибки заключается в том, что Firefox запускается, но на удаленном хосте не запущен X-сервер (GUI). Вы можете использовать пересылку X11 для запуска Firefox на удаленном хосте, но отображать его на локальном хосте. В Mac OS X вам нужно будет загрузить XQuartz , чтобы использовать пересылку X11.
13 плюса
Вам нужно проверить совместимость браузера, прежде чем выбрать тестирование с Selenium:
https://github.com/SeleniumHQ/selenium/blob/master/java/CHANGELOG
Это может помочь ответить на поставленный выше вопрос.
Автор: Viraj Pai Размещён: 07.05.2013 06:268 плюса
Получить последние Селеновые банки (2.30) для FireFox 19
Вы можете скачать последние файлы jar (2.31 на момент написания) здесь: https://code.google.com/p/selenium/downloads/list
Автор: Henock Gashaw Размещён: 20.02.2013 09:536 плюса
Я решил эту проблему, понизив мой Firefox до более старой версии, которая ранее хорошо работала с Selenium-WebDriver. В моем случае мне пришлось вернуться к Firefox 18, и эта версия работала с Selenium 2.27.
Вот ссылка для получения старых версий Firefox: https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/
Автор: gps Размещён: 07.03.2013 07:045 плюса
Эта проблема преследовала меня долгое время, и я видел одно работающее решение в случае Firefox - использовать обновленный драйвер firefox .
Если ваши обновления Firefox выполняются автоматически, вы можете время от времени сталкиваться с этой проблемой. Похоже, парни из Firefox развиваются слишком быстро, или им нет дела до обратной совместимости.
Каждый раз, когда я вижу эту проблему в моих старых скриптах, я проверяю, изменилась ли версия Firefox с тех пор - в большинстве случаев это так.
Затем я захожу в репозиторий Maven для репозитория селенового Firefox - http://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-firefox-driver и загружаю последнюю версию.
или обновите мой pom.xml (если используется maven) новой версией драйвера firefox прямо сейчас - 2.40.0
Нет простого способа избежать этой проблемы, если вы действительно явно не заблокируете автоматическое обновление от Firefox (Вы можете сделать это (На Mac) в настройках - Дополнительно - Обновление - выберите «Проверить наличие обновлений, но позвольте мне выбрать, устанавливать ли они»). )
Если ваши скрипты работают в автоматическом режиме, вы можете отключить обновления. Однако это может создать другие проблемы. Поскольку большинство людей / пользователей могут иметь обновления Firefox по умолчанию. Таким образом, ваше приложение на самом деле не тестируется на более поздних версиях.
5 плюса
У меня был Firefox 47 и Selenium 2.53 , и я получил ту же ошибку. Мое решение было изменить Firefox 47 на Firefox 46 , проблема была решена.
Автор: BrennQuin Размещён: 16.06.2016 05:004 плюса
Обновление селен банок, скачать селен 2.31.0
Эта проблема была решена парнями из селена
Это была проблема совместимости.
ура
Автор: Prabhat Размещён: 26.03.2013 02:253 плюса
Проблема со сценарием состоит в том, что среда, используемая для сценария, отличается от среды, используемой для ваших тестов, поэтому установка переменных среды там ничего не делает для ваших тестов.
Чтобы правильно установить переменную, вам нужно установить ее в Jenkins. Перейдите в Управление Дженкинс> Управление узлами> Мастер> Настройка . Установите флажок Переменные среды , затем введите DISPLAY в поле имени и установите значение: 1.0.
Кроме того, вам необходимо установить разрешения, попробуйте отключить элементы управления доступом xhost xhost +
в терминале.
2 плюса
Я тоже столкнулся с той же проблемой. Всякий раз, когда мы или веб-драйвер открывается, браузер FF будет проверять наличие обновлений, если таковые имеются. В этом случае я попытаюсь выполнить обновление во время выполнения, и тогда вы получите ошибку, даже если она обновлена должным образом только потому, что вы не обновили версию Selenium соответствующим образом.
Перейдите на страницу « http://docs.seleniumhq.org/download/ » и загрузите последнюю версию. А теперь иди и проверь, проблема действительно будет решена. :)
Автор: Mani P Размещён: 19.04.2014 03:311 плюс
Я получил ту же ошибку; Я использовал Селен-Java версии 2.25.0 и Firefox vresion 18.0.2; Я изменил версию Селена-Java на 2.30.0 и теперь работает.
Автор: Radu L. Размещён: 07.03.2013 09:171 плюс
Для решения этой проблемы используйте новые файлы jar, доступные на http://docs.seleniumhq.org/download/ . В соответствии с Java, C #, php и т. Д. Firefox 27.0.1 требует версии драйвера 2.39.0.
Автор: Ankit K Gupta Размещён: 21.02.2014 04:441 плюс
Просто установите плагин Xvnc в Jenkins. Проблема должна быть решена.
Автор: Tarique Размещён: 27.02.2014 05:091 плюс
Я получил ту же ошибку «selenium_Unable для подключения к хосту 127.0.0.1 через порт 7055» Решение: Я использовал selenium-java-2.48.2 с Firefox версии 43.0.1, и теперь он работает хорошо.
Автор: Samir 007 Размещён: 04.01.2016 06:481 плюс
У меня тоже была такая же проблема, но проблема решена после понижения версии Firefox до 35.0.1 и моей версии Selen 2,43
Автор: SHAIK NAWAZ SHAREEF Размещён: 23.05.2016 09:251 плюс
У меня была точно такая же проблема при запуске Docker, но я нашел решение в журнале, предшествующем ошибке, которую вы упомянули.
selenium_1 | 2016-11-11 11:19:34,498 DEBG 'xvfb' stderr output:
selenium_1 | (EE)
selenium_1 | Fatal server error:
selenium_1 | (EE) Server is already active for display 99
selenium_1 | If this server is no longer running, remove /tmp/.X99-lock
selenium_1 | and start again.
selenium_1 | (EE)
Я последовал совету, и проблема была решена.
Автор: Krzysztof Dabrowski Размещён: 11.11.2016 11:340 плюса
Вот как это происходит, когда я использую статическое свойство IWebDriver и вызываю его из нескольких методов тестирования.
public class LanguageMenu
{
private static IWebDriver drv;
static LanguageMenu()
{
drv = Driver.Instance;
}
...
public static void English()
{
drv.FindElement(By.Id("mvc_lang_en"));
el.Click();
}
public static void Rusian()
{
...
}
...
}
подобно
[TestMethod]
public void Language_SwitchTo_English()
{
LanguageMenu.English();
Assert.IsTrue(ContactPage.IsAt("Contact"));
}
[TestMethod]
public void Language_SwitchTo_Rusian()
{
LanguageMenu.English();
Assert.IsTrue(ContactPage.IsAt("Контакт"));
}
Решение
Для каждого вызова тестовых методов создайте новый экземпляр Driver
private static void English()
{
var drv = Driver.Instance;
var el = drv.FindElement(By.Id("mvc_lang_en"));
el.Click();
}
Автор: ZbynekSulc
Размещён: 11.07.2014 10:40
0 плюса
Обновите банки с селеном, если наш сценарий с селеном не выполняется. В настоящее время я использую selenium-java-2.43.0-srcs
Сейчас работает нормально
Автор: swathi Размещён: 19.09.2014 11:440 плюса
Это происходит на разных версиях фф. Я использую последнюю версию 39 с использованием selenium-server-standalone-2.41.0.jar и selenium-java-2.41.0.zip, который показывает ту же ошибку.
Получите последние файлы jar сервера и клиента здесь для совместимости. Я использовал сервер и клиент версии 2.47.0 и 2.47.1 соответственно. И бум! Это сработало.
Автор: AHashmi Размещён: 03.08.2015 01:420 плюса
Это происходит из-за старых версий. Просто обновите браузер до последней версии и обновите пакет selenium webdriver до последней версии.
Автор: Prabu Ananthakrishnan Размещён: 28.01.2014 04:550 плюса
Просто перезагрузите терминал. Терминал больше ничего не вешает. После этого все будет работать нормально
Автор: Sachin Mour Размещён: 26.09.2015 05:390 плюса
Добавление в базу знаний. У нас была та же проблема с бамбуком. Проблема была решена с помощью свойств окружающей среды на бамбука.
DISPLAY=":1"
Добавление значения в качестве системных свойств в pom.xml или в командной строке не сработало.
Автор: Pool Размещён: 24.11.2015 09:390 плюса
В Windows: также проверьте «битность» вашего Firefox. Firefox 43.0.1 64bit не работает с Selenium 2.50.0. Хорошо работает с Firefox 43.0.1 32bit ...
Автор: Ivan Размещён: 10.10.2016 09:200 плюса
Я тоже застрял на этой ошибке в течение трех дней и, наконец, понял ее. Вы можете просмотреть ответ, который я дал здесь. Это проблема совместимости браузера и сервера селена. Я надеюсь, что это поможет. Вы можете проверить совместимость браузера по этой ссылке
Автор: sagar chapagain Размещён: 30.11.2016 05:090 плюса
У меня была такая же проблема сегодня. Чтобы исправить я понизил Firefox версии 51 до 47, и он работает.
Примечание: я использую Linux Ubuntu Mate в Virtual Box, где host - это еще одна Ubuntu Mate. Все ОС 64-битные и Firefox также.
Автор: Topera Размещён: 02.02.2017 01:190 плюса
0 плюса
У меня была такая же проблема с Firefox 38.
После использования следующих версий версий, я мог решить эту проблему.
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.53.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-firefox-driver</artifactId>
<version>2.53.0</version>
</dependency>
Автор: Udara Seneviratne
Размещён: 15.05.2017 08:34
0 плюса
Я думаю, что это может быть проблемой отображения. Если у вас нет графического интерфейса в окне, то запуск Firefox из Selenn WebDriver даст эту ошибку.
Чтобы решить эту проблему, сначала установите Xvfb [ yum install Xvfb -y
] (драйвер виртуального дисплея) в коробке. Затем запустите свой тест от Дженкинса с xvfv-run -a -d <your test execution command>
. Это запустит браузер в виртуальном буфере отображения. Также он способен получать скриншоты с помощью селена webdriver.
-1 плюса
Решение -
1) Обновите ваш Selenium Server, например, селеновый jar «selenium-server-standalone-2.xx.x.JAR» до «selenium-server-standalone-2.45.0.JAR»
2) Обновите драйвер клиента Selenium, то есть папку selenium libs "selenium-java-2.xx.x" до "selenium-java-2.45.0"
3) Проверьте и установите совместимую версию Firefox
Refer - Скачать обновленные selenium libs & jar т.е. версию 2.45.0
Это решит вашу проблему .. Ура!
Автор: NarendraC Размещён: 01.11.2015 12:50Вопросы из категории :
- firefox Как подавить заполнение поля пароля Firefox?
- firefox Написание плагина Firefox для анализа пользовательского языка на стороне клиента
- firefox Как удалить пунктирный контур Firefox на КНОПКАХ, а также на ссылках?
- firefox Как определить, виден ли элемент DOM в текущем окне просмотра?
- selenium Есть ли способ одновременно запускать тесты Bamboo?
- selenium Selenium xpath flow
- selenium Доступ к диалоговому окну загрузки файлов в Firefox
- selenium Как отключить Javascript при использовании Selenium?
- jenkins Заставить Дженкинса (Хадсона) работать на другой работе
- jenkins Как очистить историю сборки Дженкинс / Хадсон?
- jenkins Не удалось загрузить english.pickle с помощью nltk.data.load
- jenkins Как запустить сборку, только если изменения происходят в определенном наборе файлов
- x11 Как получить удаленный рабочий стол для Linux (XDMCP, VNC)
- x11 Как написать приложение X11, которое следует за курсором
- x11 «Нет переменной дисплея X11» - что это значит?
- x11 Как получить размер глифа шрифта?
- selenium-webdriver Selenium WebDriver: я хочу перезаписать значение в поле вместо добавления к нему с помощью sendKeys с использованием Java
- selenium-webdriver NoClassDefFoundError в Java: com / google / common / base / Function
- selenium-webdriver Как выбрать опцию из выпадающего списка, используя Selenium WebDriver C #?
- selenium-webdriver Загрузка файлов с использованием Selenium WebDriver и Java Robot Class