Подтвердить что ты не робот

Селен и безголовая среда

Недавно я установил Python 2.7, Robot Framework и Selenium Library (я до сих пор не знаю, удалось ли мне... хотя) на сервере Red Hat для запуска теста в веб-приложении.

Итак, я попробовал простой тестовый пример с использованием рамки робота, чтобы узнать, работает ли Selenium Library, просто для того, чтобы открыть веб-страницу, не более того...

Сервер Selenium запускается и запускается в соответствии с результатом ps, а бинарные файлы firefox находятся в PATH...

Запуск тестового примера из Robot Framework (с pybot testcasename.tsv) Я получаю исключение: ОШИБКА: проблема с захватом скриншота в строку: java.awt.AWTException: безголовая среда

Итак, что такое Безголовая среда? Кто-нибудь есть идея, если есть что-то еще, что должно быть настроено или быть настроено также?

4b9b3361

Ответ 1

Использование X Virtual Frame Buffer (Xvfb):

Мы можем использовать xvfb для создания безголовой среды для селена (например, для запуска SSH).


Инструкция:

  • Запустите xvfb со следующими параметрами:

    $ Xvfb :89 -ac -noreset

    (где :89 создается виртуальный "дисплей" ).

  • Затем установите для переменной DISPLAY этот виртуальный экран:

    $ export DISPLAY=:89

  • В этот момент мы можем запустить сервер селена по желанию. Ниже приведены примеры.

Запустите серверный архив Java:

$ java -jar selenium-server.jar

В Python:

from selenium import webdriver

driver = webdriver.Firefox()
...

Ответ 2

Я использую ubuntu, и вот как я решил эту проблему уйти: видимо, я установил безголовую версию JRE. Как только я переключился на Sun JRE, все сработало, как ожидалось. Не работает.

Ответ 3

Вот простой робот библиотека только для этого puprose