カピバラを 2.0 に更新したばかりで、save_and_open_page 呼び出しはすべてスタイリングなしの html ページを返します。ページの上部に適切にスタイルシートへのリンクがあります。カピバラ 1.3 に戻すと、スタイルが再び機能します。これを修正する方法、および/または問題が何であるかを知っている人はいますか?
ありがとう、デイブ
更新 1。
ハック:
simonmorley が推奨するリンクに従って問題を回避する合理的な方法を見つけました: Capybara Webkit problem which points to: capybara -screenshot
これには、 capybara-screenshot gem を使用して、ページがどのように見えるかのスクリーンショットを取得することが含まれます。これを、html を生成する save_and_open_page と組み合わせると、それがどのように見えるか、HTML を見ることができます。
save_and_open_page
Capybara::Screenshot.screenshot_and_open_image
仕事に取り掛かることができれCapybara::Screenshot.screenshot_and_save_page
ば、解決策があるかもしれないと思います(名前がアクションを暗示している場合は、それが行うと思います)。ただし、試してみると、cannot load such file -- capybara/util/save_and_open_page
更新 2。
!! 待ってください、screenshot_and_open_image は現在機能していません (png 画像が作成または表示されていません)。!!
アップデート 3.
テストアプリ:
テストアプリを作成し、Github の test_capybara_screenshot に投稿しました。
開発中にこのテスト アプリを実行すると、ページに真っ赤な背景スタイルが表示されます。テストを実行すると、スタイリングがないことを除いて、save_and_open_page だけが機能します。
テストを実行すると、次の警告が表示されることに注意してください。
警告: Nokogiri は LibXML バージョン 2.7.8 に対してビルドされましたが、2.7.3 を動的にロードしました
rspec テストの詳細:
- save_and_open_page は退屈な白い背景 (スタイリングなし) で表示されます。
- screenshot_and_open_image は次のエラーを返します。
Rack::Test カピバラ ドライバーには、スクリーン ショットを出力する機能がありません。スキップ。
/~/Documents/experiments/test_capybara_screenshot/tmp/capybara/screenshot-2012-11-26-07-48-29.png をオプション {} で開くことができませんでした: '/~/Documents/experiments/test_capybara_screenshot を処理するアプリケーションが見つかりません/tmp/capybara/screenshot-2012-11-26-07-48-29.png'
- screenshot_and_save_page は次を返します。
after フックでエラーが発生しました
LoadError: そのようなファイルを読み込めません -- capybara/util/save_and_open_page が ~/.rvm/gems/ruby-1.9.3-p125@global/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251 で発生しました: 「必要」で