我在Rails 4下使用Rspec进行测试。
我想配置Rspec,以便我的所有单元测试自动运行而不需要回调,但我的所有集成测试都按照Rails的意图运行 - 所有回调都与生产和开发相同。
这可能吗?
我可以想到冗长的解决方案,包括将条件逻辑写入我的实际回调,但不是涉及配置Rspec的优雅解决方案。
答案 0 :(得分:1)
例如,如果您有以下类:
def Foo < ActiveRecord::Base
before_create :my_callback
...
end
你可以按如下方式存根回调:
allow_any_instance_of(Foo).to receive(:my_callback)