2014-11-26 21 views
6

başlatılamadı ve onu kullanmaya çalışırken aşağıdaki hatayı alıyorum:Capybara Webkit Capybara :: Webkit :: ConnectionError ben Ubuntu (14.04 LTS) üzerinde Kapibara webkit kullanıyorum

Capybara::Webkit::ConnectionError: /srv/www/app/shared/bundle/ruby/2.1.0/gems/capybara-webkit-1.3.1/bin/webkit_server failed to start. 
from /srv/www/app/shared/bundle/ruby/2.1.0/gems/capybara-webkit-1.3.1/lib/capybara/webkit/connection.rb:75:in `parse_port' 
from /srv/www/app/shared/bundle/ruby/2.1.0/gems/capybara-webkit-1.3.1/lib/capybara/webkit/connection.rb:81:in `discover_port' 
from /srv/www/app/shared/bundle/ruby/2.1.0/gems/capybara-webkit-1.3.1/lib/capybara/webkit/connection.rb:62:in `start_server' 
from /srv/www/app/shared/bundle/ruby/2.1.0/gems/capybara-webkit-1.3.1/lib/capybara/webkit/connection.rb:25:in `initialize' 
from /srv/www/app/shared/bundle/ruby/2.1.0/gems/capybara-webkit-1.3.1/lib/capybara/webkit/driver.rb:17:in `new' 

ben yüklü QT kullanarak:

sudo apt-get install libqt4-dev libqtwebkit-dev libqt5webkit5-dev 

mücevher sürümlerinin kullanılması: Kapibara (2.4.4) ve Kapibara-webkit (1.3.1)

aynı program mac (qt yüklü kullanarak homebrewleri) üzerinde çalışıyor

Teşekkürler

cevap

4

Bütün sabah başımı buna karşı yendim. çıkıyor ben rails_helper.rb bu kodu ihmal etmişti:

if ENV['HEADLESS'] 
    require 'headless' 
    headless = Headless.new 
    headless.start 
    at_exit { headless.stop } 
end 

Biz bu tetiklemek için HEADLESS ortam değişkeni kullanın. Bu tipik veya yerel bir kongre olup olmadığından emin değil. Yine de, bunu kapatmak için export HEADLESS=1'u .env'a eklemem gerekiyordu.

Ayrıca Gemfile'da gem 'headless', '~> 1.0.2' eklemem gerekiyordu.

8

Bu sorunun sorulmasından bu yana çok uzun bir zaman geçti, ama ben bir şeylerin daha eski versiyonlarını kullanmış olsam da aynı problemi yaşadım. webkit'un bazı X-Server'lara bağlanabilmesi gerektiği ve bunun başarısız olması durumunda tepkisi olduğu ortaya çıktı. Ben xvfb yükleme ve benim testleri çalıştırırken (tabii diğer ad)

xvfb-run --auto-servernum bundle exec rake test 

kullanarak sona erdi. Bu muhtemelen en uygun olandan daha az, ama benim için yeterince iyiydi. Belki bu, bu hataya rastlayan bir sonraki kişiye yardımcı olur.