capybara + poltergeist は便利

capybara のドライバーのひとつ poltergeist には remote debugging という experimental な機能があり、テスト実行中のDOMの状態をブラウザからインスペクタでみれる。

使い方

使い方は簡単で、README にもあるように driver に inspector: true を渡してあげ、 気になる部分に page.driver.debug と書くだけ。

  • spec_helper.rb
Capybara.register_driver :poltergeist do |app|
  Capybara::Poltergeist::Driver.new(app, :inspector => true)
end

Capybara.javascript_driver = :poltergeist
  • hoge_spec.rb
feature 'ブログを書く', :js do
  scenario 'タイトルを入力すると自動で大文字になる' do
    fill_in 'post[title]', with: 'soymilk'

    page.driver.debug

    page.should have_content 'SOYMILK'
  end
end

これでブラウザ上で debug を差し込んだタイミングのコンテキストでインスペクタが使える!

f:id:hrysd:20130913214715p:plain

最後に

Idobata のように、ガチガチにJavascriptを使っていて、わけもわからずテストが落ちて悩んだ時に便利!!!!(実体験)

RubyKaigi で当日スタッフをしてきました。

RubyKaigi で当日スタッフをしてきました。

参加もスタッフも初めてな RubyKaigi で、 外国の方も多く、発表は英語なものが大半で「えらい国際的だな...」と第一に感じました。

発表を聞けたのも、知らない人とはなせたのもよかったのですが、 スタッフとして準備を含んだ四日間をとおして、チームとして一つの物に携われた一体感や、 メンバーの RubyKaigi に対するものを感じることができたのではないかと個人的に思っていて、 それが個人的には気持ちよく、充実した気持ちになれました。

最後に

自分の気持ち主体な文章になってしまいましたが、 RubyKaigi はこれからも関わっていきたい!参加したい!と感じさせてくれるもでした。

皆様

四日間ありがとうございました。

一体感

f:id:hrysd:20130314194954g:plain