5

我将使用 Dalli 缓存作为键值存储。

通常在生产和开发环境中我们有线

config.cache_store = :dalli_store

所以我们可以使用Rails.cache构造来读取和写入缓存。

但是通常在测试环境中,我们没有这个配置行。

在测试环境中设置缓存以测试我的存储逻辑的正确方法是什么?

PS我正在使用Linux(Ubuntu)

4

2 回答 2

5

dalli 是缓存服务(memcached)的客户端,无论环境如何,都可以全局设置,即在您的 config/application.rb 中

config.cache_store = :dalli_store

在测试环境中禁用缓存是一种常见的方法,请检查 config/environments/test.rb

config.action_controller.perform_caching = false

所以你可以为测试环境启用它,但它可能会导致一些奇怪的冲突,最好的可能是只为特定的规格启用它:

before do # enable caching
  @caching_state = ActionController::Base.perform_caching
  ActionController::Base.perform_caching = true
end

after do # disable caching
  ActionController::Base.perform_caching = @caching_state
end
于 2013-08-28T05:57:06.007 回答
-1

我假设您在 Ubuntu 上,并在谷歌上搜索了“ubuntu install memcached rails”,并找到了几页详细信息。以下是关键点。

安装 memecache

sudo apt-get install memcached

重新启动 memcahce

/etc/init.d/memcached restart
于 2013-01-26T09:06:14.857 回答