Django-Q集Q#u簇&x27;同步';:真不';不适用于单元测试

Django-Q集Q#u簇&x27;同步';:真不';不适用于单元测试,django,django-rest-framework,django-q,Django,Django Rest Framework,Django Q,我正在使用Django-Q发送Django 2.2、DRF 3.9和Postgres 10.9的异步电子邮件 除了单元测试外,设置工作正常。 我所指的问题与我所面临的问题完全相同: 根据链接,其中一个解决方案是将同步设置更改为“True”,以便进行测试 这是我在tests.py中的内容: from django.conf import settings settings.Q_CLUSTER['sync'] = True class UserAPITestCase(APITransactio

我正在使用Django-Q发送Django 2.2、DRF 3.9和Postgres 10.9的异步电子邮件

除了单元测试外,设置工作正常。 我所指的问题与我所面临的问题完全相同:

根据链接,其中一个解决方案是将同步设置更改为“True”,以便进行测试

这是我在tests.py中的内容:

from django.conf import settings
settings.Q_CLUSTER['sync'] = True


class UserAPITestCase(APITransactionTestCase):
    print(settings.Q_CLUSTER)

“print”显示已添加“sync”:True,但异步_任务仍在异步模式下运行

但是,如果我直接在设置文件中添加同步设置,那么一切都会正常工作,异步_任务会同步运行

这就好像django-q没有接受稍后更新的设置。我该如何解决这个问题?

试着去做

from django.test import override_settings
from django.conf import settings


@override_settings(Q_CLUSTER={**settings.Q_CLUSTER, 'sync': True})
class UserAPITestCase(APITransactionTestCase):
    pass

不幸的是,我得到了同样的结果。Sync未更新为True似乎覆盖设置和DRFIf可能存在问题。如果此解决方案不起作用,我建议您遵循在不同环境中处理设置的最佳做法,如暂存、测试、开发和生产。它用于创建基本设置文件并从中继承其他环境的文件。这是一份关于它的报告。谢谢。我也有同样的想法。现在我做这件事是为了解决这个问题。你怎么解决这个问题呢。目前我也有同样的问题。