我正在编写视图测试,我想测试图像:
<%= image_tag "icon.png", class: "img-responsive" %>
所以我做了这个测试,但是没有工作:
it 'app logo' do
render
assert_select 'img.img-responsive[src=?]', asset_path('icon.png')
end
如果我使用以下内容,它会起作用,但我认为这不是正确的方法:
it 'app logo' do
render
assert_select 'img.img-responsive[src=?]', '/assets/icon.png'
end
可能是什么问题? 这是正确的用rspec进行测试的原因吗?
答案 0 :(得分:0)
我不确定问题中的方法是正确还是错误,但您可以尝试以下方法:
expect(response.body).to include('icon.png')
expect(response.body).to have_css(".img-responsive")
答案 1 :(得分:0)
尝试使用capybara:
page.should have_selector(:xpath, XPATH_OF_THE_IMAGE_ELEMENT)