【发布时间】:2012-03-09 22:50:04
【问题描述】:
我非常广泛地使用片段缓存并且遇到了一些问题,其中意外对象被捕获在缓存中和/或片段没有按原计划过期。
我认为这将是请求规范的主要候选者,但不确定:
- 需要做什么来模拟(有效地)触发缓存的场景。
- 需要在测试环境中进行哪些调整才能允许缓存。
- 缓存会跨多个规范持续存在,还是 rspec 会自动丢弃每个规范之间的缓存?
- 最重要的是,有没有一种方法可以确定缓存是否实际被提供?
【问题讨论】:
-
你能澄清一下(1)吗?发出 GET 请求不是真实的模拟吗?
-
@bdon 我想我要问的是 - 我是否需要为每个“缓存规范”触发至少 2 个获取请求一次缓存它,一次验证?或者有没有更有效的方法?可能没有,但我想知道是否有。
-
即使有另一种方法来加热缓存,似乎触发两个请求将是最现实的。单个请求不应给您的测试套件增加太多开销。
-
有a similar question,我添加了an example我如何使用rspec视图规范来测试rails视图中的缓存过期
标签: ruby-on-rails caching rspec