seleniumはguard時とかにウィンドウ出てきてウザい。capybara-webkitはcapybara2系に対応してない。(reposのheadでは対応してるので次bump upされたら対応されるっぽい)

現時点ではpoltergeist一択っぽい。

ただ、Macでwebfontを読むとphantomjsがcrushするのでpatch当てる。

$ brew install phantomjs
# Gemfile:
group :test do
  gem 'poltergeist'
  gem 'rack-contrib'
end
# spec/spec_helper.rb:
require 'capybara/poltergeist'

RSpec.configure do |config|
  Capybara.javascript_driver = :poltergeist
end
# config/initializers/poltergeist.rb:
if Rails.env.test?
  require 'rack/contrib/simple_endpoint'
  Rails.application.config.middleware.insert_after Rack::Runtime, Rack::SimpleEndpoint, /\.ttf$/ do |req, res|
    ua = req.env['HTTP_USER_AGENT']                                            
    if ua =~ /Intel Mac OS X.*PhantomJS/                                       
      res.status = 403
      "Denying #{req.fullpath} to #{ua}"                                       
    else
      :pass
    end
  end
end

これは酷い。

この作業、@mreinschとペアプロでやってたんですがpoltergeistってドイツ語だそうです。ちなみに@hrysdがhidden fieldを「ハイデンフィールド」とドイツ語っぽく呼んでたのでドイツ語で何て言うのか聞いたら、「verstecktes felder」だそうです。全く違いました。どんな言語でも「ハイデンフィールド」は間違いだそうです。

Comments


Option