8

HTMLページには、次のコードが含まれているはずです。

<div class="user-image" style="background-image:url(/images/user_image.jpg)">

CapybaraとRSpecを使用してこれをどのように確認しますか?

4

2 に答える 2

14

おそらく、この div が指定された背景画像を使用していることを確認しようとしています。私はおそらく次のようなことをするでしょう:

it "has a user image" do
  page.should have_selector('div.user-image')
end

it "displays the user image" do
  page.find('div.user-image')['style'].should == 'background-image:url(/images/user_image.jpg)'
end

ただし、RSpec はおそらくこの仕事には不適切なツールです。このようなテストには Cucumber の使用を検討してください。

于 2012-07-30T21:50:32.337 に答える
4

Capybara と Selenium では、ブラウザで JavaScript を実行して結果を返すことができます

方法は次のとおりです。

page.execute_script 'return $("div.user-image").css("background-image");'
于 2015-01-05T09:56:22.333 に答える