Estoy tratando de hacer algunas pruebas sin cabeza usando un script de ruby. Básicamente estoy ejecutando Xvfb en pantalla: 1, y luego activando Watir::Browser.new(:firefox)
usando watir-webdriver.Ejecutando Selenium :: WebDriver :: Firefox dentro de Xvfb de ruby como usuario NO root
Esto funciona muy bien si ejecuta el script como root - Puedo ejecutar x11vnc y ver el script ejecutar el navegador e interactuar con él.
El problema es que necesito poder llamar a este script de ruby desde una aplicación de Rails, y NO ejecutarlo como root ... si intento ejecutar el script desde la línea de comando como un usuario normal, Xvfb se activa up on: 1 como de costumbre, pero Watir no iniciará un navegador ... eventualmente se agota después de 60 segundos. Al conectarse a través de VNC, aparece una pantalla negra con el cursor del mouse.
Puedo hacer todo el lote desde la línea de comandos: inicie Xvfb, luego inicie firefox --display=:1
y el navegador se inicia, por lo que debe ser un problema de Selenium, ¿no?
Nutshell: Selenium/Webdriver se niega a iniciar un navegador dentro de Xvfb a menos que ejecute el script como root.
+1 para agregar su solución una vez que lo hizo bien –
@ user724205 Su respuesta debe agregarse como respuesta, no se debe copiar en la pregunta. –