【发布时间】:2017-11-26 01:39:42
【问题描述】:
我想让我的 celery 工作进程与 django 测试数据库对话。 它是一个 oracle 数据库,所以我相信数据库/用户已经创建。
我只是想弄清楚要传递 Celery/App 配置以使其与“TEST”数据库对话。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
.............
'TEST': {
'USER': WIT_TEST_DB_USER,
'PASSWORD': WIT_TEST_DB_USER,
}
}
}
我看过一篇 stackoverflow 文章,其中谈到将 settings.conf 从父测试 setup() 传递到工作进程。当使用 sqllite 数据库自动生成测试数据库文件时,这可能是必要的。
就我而言,它是一个定义明确的 oracle 测试数据库,我认为它已经是配置/设置文件的一部分。
所以我正在寻找一种独立于测试运行程序/测试用例代码直接启动工作流程的方法。
有人可以建议一种方法吗?
【问题讨论】:
-
希望对您有所帮助.....docs.celeryproject.org/en/latest/django/…
-
这让 celery worker 代码与“默认”数据库对话,而不是测试数据库。测试数据库在运行 django 测试运行时由 django testrunner 代码创建/连接,并在测试结束时被销毁。我想在测试运行器中启动工作者,在它们被创建并让它与测试数据库对话之后。我没有看到它与测试数据库对话。
标签: python django oracle celery