温柔地对我说:我得了流感,只有少数神经突触在射击!
这是RSpec的简单请求测试:
require 'spec_helper'
describe 'Home Page' do
it 'should mention Home' do
get '/'
response.body.should have_content("Home")
end
end
大。有用。现在我想验证在访问主页时是否加载了图像。我假设有一个类似于have_content()的图像的匹配器,所以我首先去寻找has_content()的定义。
中找不到
https://www.relishapp.com/rspec/search?query=have_content
http://guides.rubyonrails.org/testing.html
http://api.rubyonrails.org/
但我记得RSpec对匹配器有很好的命名规则,所以(例如)even?() => be_even()
。但即便如此,在上面搜索“内容”也找不到任何东西。
(顺便说一下,我很确定我不是在寻找同名的Capybara方法,因为我正在做get
而不是visit
。 ?)
冒着让这个问题因过于模糊而被拒绝的风险:这个方法来自哪里,以及我在哪里可以了解我可以传递给response.body.should
的其他问题?
答案 0 :(得分:1)
RSpec请求规范使用Capybara,因此您可以使用get
或visit
。
如果您只想检查该网页是否包含具有正确链接的<img>
元素,您可以使用:
response.should have_selector('img', :src => '...')