3

アプリケーションにフラグメント キャッシュを実装しようとしています。めったに変更されない大量のデータが表示されるため、フラグメント キャッシングが、私が抱えていたパフォーマンスの問題の最良の解決策になると考えました。

私は Rail の組み込みフラグメント キャッシングとキャッシュ スイーパーを使用していますが、フラグメントの作成/有効期限切れをテストする良い方法が見つからないようです (rspec とその仲間を使用)。

どんな助けでも大歓迎です。


明確化:私が実際にテストしたいのは、適切なフラグメントが期限切れになっていることだけであり、特に何かがキャッシュに出入りしていることではありません。

4

1 に答える 1

1

モカの場合は次のようになります。

UserController.any_instance.expects(:expire_fragment).with('cache_key')

このテストで気にする唯一のことは、メソッドが実際にジョブを実行するかどうかではなく、適切な引数でメソッドが実際に呼び出されることです。

rspec で使用:

it 'expires the awesome user cache' do
  UserController.any_instance.expects(:expire_fragment).with('awesome_user_cache').once

  post :create, id: user.id, ect...
end
于 2012-05-02T21:41:15.087 に答える