我正在尝试为简单的控制器编写控制器规范。但是,Capybara没有看到任何页面内容。但是,在我的浏览器中查看网站的页面工作得很好。我做错了什么?
吨。汉克斯!
答案 0 :(得分:14)
您需要明确告诉控制器规范您希望它呈现视图才能使其正常工作。更新您的规范如下:
require 'spec_helper'
describe PostsController do
render_views # Render this controller's views during spec execution.
before do
@post = Fabricate :post
end
# ...
end
这在rspec的readme中有所描述。有关更详细的视图,请参阅rspec-rails'cucumber feature for 'render_views'。
这只是提醒一句。有这样的原因,这不是默认行为:
spec/integration
而不是spec/controller
。...不是说你不应该这样做,只是说你应该清楚你为什么。
希望有所帮助。