有没有一种方法可以检查使用rspec和水豚的图像和图片的存在?
我可以查看favicon和图像的DOM,但我希望能够检查这些图像是否也加载。这对rspec和capybara有可能吗?
答案 0 :(得分:6)
describe "check images and favicon" do
before { visit "url/to/check")
it "should have the images" do
page.should have_css('img', text: "image1.jpg")
it "should have the favicon" do
page.should have_xpath("/html/head/link[@href='favicon.ico']"
end
end
答案 1 :(得分:4)
答案 2 :(得分:3)
问题是要确定是否存在实际的img和favicon。以下是检查滑块的所有图像是否存在的代码。
page.all('#carousel img').each do |img|
visit img[:src]
page.status_code.should be 200
end
对于具有id myimage的个人图像,请使用
visit page.find('img#myimage')[:src]
page.status_code.should be 200
最简单的方法是运行以下
page.all('link[rel~="icon"]', visible: :any).each do |fav|
visit fav[:href]
page.status_code.should be 200
end
答案 3 :(得分:0)
要测试页面上所有损坏的图像,
我收集所有图像并使用以下命令检查“获取”响应:
describe "Check for Images" do
before { visit page_path }
it "should not have broken images" do
all_images = page.all('img')
all_images.each do |img|
get img[:src]
expect(response).to be_successful
end
end
end
希望有帮助。