Я пытаюсь провести безголовое тестирование с помощью скрипта ruby. По сути, я запускаю Xvfb на дисплее: 1, а затем запускаю Watir::Browser.new(:firefox)
с помощью watir-webdriver.
Это отлично работает, если вы запускаете скрипт от имени пользователя root - я могу запустить x11vnc и наблюдать, как скрипт запускает браузер и взаимодействует с ним.
Проблема в том, что мне нужно иметь возможность вызывать этот скрипт ruby из приложения Rails, а НЕ запускать его как root ... если я попытаюсь запустить скрипт из командной строки как обычный пользователь, Xvfb запустится: 1 как обычно, но Watir не запускает браузер ... в конечном итоге он отключается через 60 секунд. При подключении через VNC появляется черный экран с курсором мыши.
Я могу сделать все из командной строки - запустить Xvfb, затем запустить firefox --display=:1
и запустить браузер, так что это, должно быть, проблема с Selenium, верно?
В двух словах: Selenium / Webdriver отказывается запускать браузер внутри Xvfb, если я не запустил скрипт от имени пользователя root.