我已经读过Testing with Celery,但仍然有些困惑。我想测试通过手动显式运行任务来生成Celery任务的代码,例如:
def test_something(self):
do_something_that_generates_a_celery_task()
assert_state_before_task_runs()
run_task()
assert_state_after_task_runs()
我不想完全模拟任务的创建,但是与此同时,我也不关心测试芹菜工人捡起的任务。我假设芹菜有效。
我要尝试执行的实际上下文是Django应用程序,其中的某些代码在请求中运行太长时间,因此将其委派给后台作业。
答案 0 :(得分:0)
在测试模式下,使用CELERY_TASK_ALWAYS_EAGER
= True
。如果您已遵循django-celery配置的默认指南,则可以在django的settings.py
中设置此设置。