私はDjango RESTフレームワークのSimpleRateThrottleに基づいてカスタムのThrottlingクラスを持っています。私はpytestでカスタムクラスをテストしたいと思います。私のデフォルトのテスト設定はDummyCacheを使用しているので、この特定のテストモジュールのためにLocMemCacheに切り替えたいと思う(SimpleRateThrottleはカウントを追跡するためにキャッシュバックエンドを使用する)。選択的なテストのためにキャッシュバックエンドを切り替える方法はありますか?フィクスチャのsettings.CACHEの設定は機能していないようです。私もSimpleRateThrottle内のdefault_cacheを嘲笑してみましたが、それを正しく取得できませんでした。LocMemCacheを使用して選択的なDjango pytest
naive_throttler.py
from rest_framework.throttling import SimpleRateThrottle
class NaiveThrottler(SimpleRateThrottle):
...
rest_framework/throttling.py
from django.core.cache import cache as default_cache # Or how can I patch this?
class SimpleRateThrottle(BaseThrottle):
...
これは素晴らしいニュースですが、pytestはそれをしないサポートしていないようですか? – Andy
普通の関数でpytestと一緒に使っただけで、クラス関数でも動作するはずです –