2013-09-24 2 views
12

Я сделал свое исследование и нашел другие связанные с этим проблемы. Никто не помог.Ошибка Selenium WebDriver Firefox - Не удалось подключиться

до сих пор:

  • имеют до даты версии селена

  • установлена ​​более ранняя версия Firefox

Я затмить на Windows 7, я создал. война и тестируется в eclipse под локальным хостом: 8080/JSPprojectServlets (на W7), и он отлично работает. selenium открывает firefox, получает URL-адрес, затем получает источник.

Затем я помещаю файл .war в свою машину linux (ubuntu) под tomcat7/webapps и пытаюсь посетить его с помощью моей машины Windows 7 под 192.168.1.102:8080/JSPprojectServlets, но он не работает и дает следующую ошибку :

HTTP Status 500 - Failed to connect to binary FirefoxBinary(/usr/bin/firefox) on port 7055; process output follows: 

type Exception report 

message Failed to connect to binary FirefoxBinary(/usr/bin/firefox) on port 7055; process output follows: 

description The server encountered an internal error that prevented it from fulfilling this request. 

exception 

org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary(/usr/bin/firefox) on port 7055; process output follows: 

(process:32704): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed 
Error: no display specified 

(process:32711): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed 
Error: no display specified 

Build info: version: '2.32.0', revision: '6c40c18', time: '2013-04-09 17:23:22' 
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '3.8.0-29-generic', java.version: '1.7.0_25' 
Driver info: driver.version: FirefoxDriver 
    org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:118) 
    org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:244) 
    org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:110) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:190) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:183) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:179) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:92) 
    org.blah.blah.XmlServlet.doGet(XmlServlet.java:25) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:621) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
root cause 

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

(process:32704): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed 
Error: no display specified 

(process:32711): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed 
Error: no display specified 

    org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:106) 
    org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:244) 
    org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:110) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:190) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:183) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:179) 
    org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:92) 
    org.blah.blah.XmlServlet.doGet(XmlServlet.java:25) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:621) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.35 logs. 

мой код выглядит следующим образом

package org.blah.blah; 

import java.io.IOException; 
import java.io.PrintWriter; 

import javax.servlet.ServletException; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 


import org.openqa.selenium.WebDriver; 

import org.openqa.selenium.firefox.FirefoxDriver; 
//import org.openqa.selenium.chrome.ChromeDriver; 


public class XmlServlet extends HttpServlet { 

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     //System.out.println("Hello from GET method."); 
     PrintWriter writer = response.getWriter(); 
     writer.println("<h3></h3>"); 

     WebDriver driver = new FirefoxDriver(); 

     driver.get("http://google.com"); 

     writer.println(driver.getPageSource()); 

    } 
} 

UPDATE:

Когда я использую HtmlUnitDriv er работает 192.168.1.102:8080/JSPprojectServlets

ясно, что он почему-то не может открыть firefox. Я в W7 64bit и имею instaleld FF10 и до сих пор ничего.

+0

есть ли у кого-нибудь идеи? –

+2

Я не уверен, что понимаю вашу настройку. У вас есть WAR на tomcat на сервере Linux и пытаетесь запустить проект selenium на машине W7 с FF10, правильно? Какая из машин выдает эту ошибку? Это похоже на что-то, брошенное машиной Linux, но машина Linux не должна пытаться запустить Firefox, если я правильно понял настройку. Вы можете уточнить? О, и открывает ли URL вручную на машине Windows? – blalasaadri

+0

Действительно ли ваша война отлично работает на ubuntu и вы можете получить доступ к ней в системе Windows? Какая система Selenium работает? –

ответ

7

Попробуйте дать абсолютный путь двоичного кода Firefox в качестве параметра в вашем коде, а при вызове из win7 укажите это как во входном сигнале вашего JSP, а затем он сможет решить проблему. Из предыдущей трассировки стека говорится, что бинарный файл firefox не найден в/usr/bin/firefox, но вы пытаетесь вызвать webdriver в win7, где путь отличается.

Receiving org.openqa.selenium.WebDriverException: Cannot find firefox binary in PATH running tests in Selenium IDE with Webdriver playback

+0

Спасибо! Не совсем то, что я хотел, но лучшее решение. –

1

Это происходит, когда java-клиент не может подключиться к экземпляру Selenium на локальном хосте. Если вы работаете в Windows, убедитесь, что в файле хостов «127.0.0.1 localhost» прокомментирован. Файл хостов будет доступен в папке C: \ Windows \ System32 \ drivers \ etc.

У этого исправлено то же самое, что я столкнулся. В основном это происходит, если мы за прокси-сервером.

+0

спасибо за ответ .... но он продолжает давать ту же ошибку. Я не работаю на localhost ... только eclipse находится на локальном хосте для тестирования. Я помещаю файл .war на свой сервер ubuntu, а затем направляю его во внутренний ip из окон. –

+0

Может ли selenium загружать браузер непосредственно с веб-страницы? в основном, что я делаю, это использование JSP для создания веб-страницы ... Я бы зашел на сайт www.site.com/selenium.jsp , и эта веб-страница должна загрузить новый браузер -> перейти на URL-адрес www.google. com -> search -> выходные данные это разрешено? –

0

я испытал проблему, как это с ChromeDriver, где я не мог запустить тесты, потому что мой chromedriver не поддерживает мою версию Google Chrome, что я была установлена ​​на моем компьютере.

Вместо установки старой версии Firefox, и имеющие более новую FirefoxDriver, убедитесь, что оба обновив первоклассный как

1

У меня была такая же проблема. Повсюду я был признан первопричиной как проблема с версией, и на самом деле это было. Это было отсортировано после перехода на последнюю версию Selenium Web Driver i.e от 2.32 до 2.39 (так как все остальные компоненты, такие как Java/Web-браузер и т. Д., Уже обновлены). Теперь все скрипты работают нормально.

0

Я имел ту же ошибку на развертывание войны и тестирование с помощью Selenium на Windows 7 и Apache-котом-6.0.37:

org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:118) 

Поскольку тесты работали перед обновлением Firefox к V 27 (затем 29). Я попытался вернуться к более ранней версии Firefox 18.0.2 (http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/18.0.2/win32/en-US/), и это сработало.

1

У меня тоже была такая же проблема, но как-то я этот вопрос решили мимо,

  1. обновление моего JAR файлов: селеном ява-2.43.0.jar в селеном Java- 2.48.2.jar и селен-сервера автономный-2.43.1.jar к селеном сервера автономный-2.48.2.jar
  2. Добавлен новый JAR-файл селен явы-2.48.2-srcs.jar к импровизировать

Этих изменения сделали мой код безупречно в моем случае

0

обновления вашего селена Java - баночка файл *..

Текущая версия селена Java баночка селена ява-2.48.2.jar

поэтому используйте обновленную баночку.

Если вы не хотите обновлять файлы jar, в этом случае отключите обновление firefox

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