Ruby on rails Rspec 3与view.stub(Rails)的升级问题

Ruby on rails Rspec 3与view.stub(Rails)的升级问题,ruby-on-rails,rspec,rspec-rails,Ruby On Rails,Rspec,Rspec Rails,我正在将我的测试升级到Rspec3(真麻烦),删除了所有的“should”,但我无法解决如何升级视图测试中的“view.stub” 我在用这个装置 例如: view.stub(:current_user) { nil } render expect(rendered).to .... etc 这给了我一个弃用警告: 使用rspec mocks的旧中的存根:如果不显式启用语法,则不推荐使用该语法。使用新的:expect语法或显式启用:should。从……打来的 我不知道如何升级到新的“改进”

我正在将我的测试升级到Rspec3(真麻烦),删除了所有的“should”,但我无法解决如何升级视图测试中的“view.stub”

我在用这个装置

例如:

view.stub(:current_user) { nil }

render

expect(rendered).to .... etc
这给了我一个弃用警告:

使用rspec mocks的旧
中的
存根
:如果不显式启用语法,则不推荐使用该语法。使用新的
:expect
语法或显式启用
:should
。从……打来的

我不知道如何升级到新的“改进”语法。 谢谢

您还可以使用:

allow(view).to receive(:current_user).and_return(nil)

我个人觉得它更具可读性。有关更多信息,请参见

事实上,弃用消息完全令人困惑。转到RSpec3中的显著变化部分。嗨,这段旧代码的等价物是什么。环境存根(:[])环境存根(:[])。带(名称)。和_返回(值)
allow(环境)。要接收(:[])。带(名称)。和_返回(值)
,顺便说一句,需要自动转换为RSpec 3语法。
allow(view).to receive(:current_user).and_return(nil)