rails para instalar descargar ruby-on-rails ruby ruby-on-rails-3 webkit capybara-webkit

ruby-on-rails - para - instalar ruby en windows



Gema sin cabeza: webkit_server: no se puede conectar al servidor X (4)

Estaba tratando de hacer que la gema de capybara-webkit trabajara con capybara y terminé usando xvfb-run en el trabajo de CI para mis pruebas.

xvfb-run bundle exec cucumber ...

¿Cuál es el comando que está ejecutando su trabajo de CI?

Tengo algunos problemas para ejecutar capybara-webkit con la gema Headless, Xvfb y nuestro servidor ci. Utilizamos esta configuración para las pruebas de integración automática y las pruebas de javascript de nuestra aplicación Ruby on Rails 3.2. Durante las pruebas se queja de que

webkit_server: cannot connect to X server

Pero cuando me ps aux | grep Xvfb ps aux | grep Xvfb

deploy 1602 0.0 0.1 61696 1912 pts/2 S+ Jul10 0:00 /usr/bin/Xvfb :99 -screen 0 1280x1024x24 -ac

Veo el Xvfb corriendo. Si ejecuto las pruebas con --trace , solo muestra el registro de errores anterior y no puedo corregir el error.

¿Alguna idea de cómo podría obtener más información, o incluso una solución?


Instalar xvfb

sudo apt-get install xvfb

Luego ejecute su comando usando xvfb

xvfb-run rspec


Nos encontramos con el mismo problema ... Resulta que en nuestro spec_helper.rb nos faltaba el comando de inicio sin cabeza (a continuación).

Aquí está nuestra configuración rspec:

require File.expand_path("../../config/environment", __FILE__) require ''rspec/rails'' require ''rspec/autorun'' require ''capybara/rspec'' require ''capybara/webkit'' require ''headless'' Capybara.register_driver :webkit do |app| Capybara::Driver::Webkit.new(app, :ignore_ssl_errors => true) end Capybara.javascript_driver = :webkit # don''t run on the local machine (since we don''t have xvfb running locally) if Rails.env.production? headless = Headless.new headless.start end


Si está utilizando Travis CI, es posible que obtenga un kilometraje de este ajuste de configuración:

before_install: - "echo ''gem: --no-document'' > ~/.gemrc" - "echo ''--colour'' > ~/.rspec" - export DISPLAY=:99.0 - sh -e /etc/init.d/xvfb start