我们有一个Rails应用程序,我们用RSpec测试.我们想要规范依赖于Memcached的操作.这样做的最佳做法是什么?
我想通过将所有调用存根来实现这一点Rails.cache
.这是一个好主意吗?
根据@Pan Thomakos的建议,我正在添加一些关于我正在尝试测试的场景的其他详细信息:
我们在系统中有帐户的概念,因此在每次请求时我们都会检索当前用户和当前帐户.因为系统中的帐户不多,所以我们将它们全部保存在缓存中并从那里检索它们.
def self.find_by_slug(slug) Rails.cache.fetch(Account.cache_key_for_slug(slug), :expires_in => 1.day) { super } end
出于这个原因,在这种情况下缓存不仅是一个很好的行为,而是预期的行为和我想要测试的东西.因此,关闭缓存是行不通的.