我将使用Dalli缓存作为键值存储。
通常在生产和开发环境中我们有行
config.cache_store = :dalli_store
然后我们可以使用Rails.cache
构造来读取和写入缓存。
但是在测试环境中我们通常没有这个配置行。
为了测试我的存储逻辑,在测试环境中设置缓存的写法是什么?
P.S。我正在使用Linux(Ubuntu)
答案 0 :(得分:3)
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
答案 1 :(得分:-1)
我假设你在Ubuntu上做了一个google的“ubuntu install memcached rails”,并找到了几页详细信息。以下是要点。
安装memecache
sudo apt-get install memcached
重新启动memcahce
/etc/init.d/memcached restart