我非常喜欢 RSpec 能够分离控制器和视图测试的方式,但在进行视图测试时遇到了一些使用 capybara 匹配器的问题。基本上,我想要实现的是这样的:
describe "some page" do
it "should render with lots of stuff" do
assign ..
render
rendered.should have_button ('Any button') #or any capybara matcher, really
end
end
我在网上看到一些帖子展示了如何配置capybara和rails3以与cucumber或rspec控制器测试平稳地工作,但这不是我真正想要的——也就是说,在尽可能低的级别上测试视图。
此外,如果有其他方法可以做到这一点(不需要大量自定义代码,因为我知道我可以编写一些匹配器从使用nokogiri或其他适合工具呈现的给定选择器中提取),那就太好了——使用capybara并不是必需的。