当前位置: 首页> 汽车> 行情 > django-celery应用-定时执行测试cases

django-celery应用-定时执行测试cases

时间:2025/7/12 5:35:33来源:https://blog.csdn.net/weixin_44919017/article/details/141107764 浏览次数: 0次

1、celery周期性任务
简介-----celery beat 是一个调度程序,它定期启动任务,然后由集群中的可用工作节点执行这些任务。
django-celery-beat
celery默认的调度程序是 celery.beat.PersistentScheduler ,它简单地跟踪本地 shelve 数据库文件中的最后一
次运行时间。 Django-celery-beat 扩展,它将时间表存储在Django数据库中,并提供了一个方便的管理界面来在运
行时管理周期性任务。
2、步骤
celery -A apiauto beat -l info --scheduler
django_celery_beat.schedulers:DatabaseScheduler
在这里插入图片描述
@shared_task
def run_task(pk=None, task_id=None, env_id=None, version=None, **kwargs):
if pk is None:
# 说明是定时执行
test_record = TestRecord.objects.create(
task_id=task_id,
environment_id=env_id,
version=version,
arguments=kwargs,
runner=‘定时执行’
)
# 创建测试报告
Report.objects.create(record=test_record, status=2)
else:
# 异步执行
# 1. 拿到测试记录
test_record = TestRecord.objects.get(pk=pk)

重启worker和beat:
celery -A apiauto worker -l
info -P eventlet
celery -A apiauto beat -l i
nfo --scheduler django_celery_beat.schedulers:DatabaseScheduler
找到接口,在admin后台添加测试定时任务
在这里插入图片描述
添加相应的接口配置,即可执行

关键字:django-celery应用-定时执行测试cases

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: