gpt4 book ai didi

django - 在测试中使用 Django 缓存强制连接错误

转载 作者:行者123 更新时间:2023-11-28 20:11:08 24 4
gpt4 key购买 nike

当 Django 无法连接到缓存时,我有处理 ConnectionError 的代码,我想测试一下。

我遇到了一个问题,即在没有实际禁用真实缓存的情况下,我无法在测试中模拟它。

我尝试过使用 Django 设置覆盖:

with self.settings(CACHES={'default': {'BACKEND': 'django.core.cache.backends.dummy.DummyCache'}}):

不过上面只是模拟了一个缓存,并不是说它不可用。

有没有办法做到这一点?

提前致谢。

最佳答案

您可以编写自己的缓存后端来引发 ConnectionError

from django.core.cache.backends.base import BaseCache


class UnavailableCache(BaseCache):
...

def get(self, *args, **kwargs)
raise ConnectionError()
...

然后在 self.settings 中使用这个后端:

with self.settings(CACHES={'default': {'BACKEND': 'path.to.UnavailableCache'}}):

关于django - 在测试中使用 Django 缓存强制连接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41504033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com