这是可行的:
subject(:my_post) { post path }
it "does not exist" do
my_post
expect(response.status).to eq(403)
end但我想整理一下,http://betterspecs.org/建议:
it { is_expected.to respond_with 403 }但我得到了:
NoMethodError:
undefined method `response' for 403:Fixnum发布于 2015-05-22 23:32:15
控制器规范中的subject缺省为正在测试的控制器,但您正在覆盖它。将subject(:my_post)更改为let(:my_post)应该可以。
此外,不要假设BetterSpecs.org总是显示最好的方法。
https://stackoverflow.com/questions/30399785
复制相似问题