Selenium Webdriver - проблема с FirefoxDriver в Debian Lenny (ошибка не отображается)

Я использую Selenium для тестирования своего веб-сайта, он открывает URL-адрес с помощью Firefox, входит в систему, выполняет некоторые действия на странице, а затем выходит из системы и закрывает Firefox. Это все прекрасно работает в Windows 7. Код начинается с:

WebDriver driver = new FirefoxDriver();
driver.get(URL);

Теперь я развернул свой jar в linux box, на котором работает Debian lenny, на котором есть iceweasel. Задание cron запускает программу, которая выдает следующую ошибку при попытке открыть firefox:

org.openqa.selenium.firefox.NotConnectedException: невозможно подключиться к хосту 127.0.0.1 через порт 7055 после 45000 мс. Выход консоли Firefox: Ошибка: не удается открыть дисплей:: 0 Ошибка: не удается открыть дисплей:: 0

по адресу org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start (NewProfileExtensionConnection.java:106) по адресу org.openqa.selenium.firefox.FirefoxDriver.startClient (FirefoxDriver.java:24em.web.weg. . (RemoteWebDriver.java:110) по адресу org.openqa.selenium.firefox.FirefoxDriver. (FirefoxDriver.java:190) по адресу org.openqa.selenium.firefox.FirefoxDriver. (FirefoxDriver.java:183ena.op.a.a.ag. Org. .firefox.FirefoxDriver. (FirefoxDriver.java:179) в org.openqa.selenium.firefox.FirefoxDriver. (FirefoxDriver.java:92) в auth.Authenticator.authenticate (Authenticator.java:15) в читателе Reader. ReaderThread.java:67) org.openqa.selenium.WebDriverException: не удалось подключиться к двоичному FirefoxBinary (/ usr / bin / firefox) через порт 7055; вывод процесса: Ошибка: не удается открыть дисплей:: 0 Ошибка: не удается открыть дисплей:: 0

Информация о сборке: версия: «неизвестно», ревизия: «неизвестно», время: «неизвестно» Информация о системе: os.name: «Linux», os.arch: «i386», os.version: «2.6.26-2- 686 ', java.version:' 1.6.0_26 'Информация о драйвере: 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. (RemoteWebDriver.java:110) по адресу org.openqa.selenium.firefox.FirefoxDriver. (Firefox: 1). .selenium.firefox.FirefoxDriver. (FirefoxDriver.java:183) в org.openqa.selenium.firefox.FirefoxDriver. (FirefoxDriver.java:179) в org.openqa.selenium.firefox.FirefoxDriver (FirefoxDriver) (FirefoxDriver). в auth.Authenticator.authenticate (Authenticator.java:15) в reader.ReaderThread.run (ReaderThread.java:67)

У меня Xvfb работает нормально в поле, и я установил переменную DISPLAY в 0. Я искал вокруг, и ни одно из решений (например, установка переменной env) не сработало.

Разве XVfb не должен работать как неграфическая среда, в которую браузер будет запускать и выполнять необходимые действия? Что мешает запуску?

Я использую последнюю версию Selenium 2.31 и Firefox 3.0.6 Iceweasel.

Редактировать: Обновлен до Firefox 14 и до сих пор вижу ту же проблему. Я даже поднял предел тайм-аута до 60 секунд.

driver.manage (). timeouts (). pageLoadTimeout (60, TimeUnit.SECONDS);

РЕШИТЬ: Запустив его с помощью оболочки xvfb, выполните xvfb-run следующим образом:

export DISPLAY=:0.0
xvfb-run --auto-servernum --server-num=0 nohup java - jar X.jar

Ответы на вопрос(3)

Ваш ответ на вопрос