消息处理任务测试方法、装置、系统、设备及介质制造方法及图纸

技术编号:26478472 阅读:17 留言:0更新日期:2020-11-25 19:22
本发明专利技术公开了消息处理任务测试方法、装置、系统、设备及介质,所述方法包括封装异常注入原子操作;获取消息处理任务运行环境;所述消息处理任务运行环境包括为每个消息生产者和每个消息消费者均设置的消息队列,以及用于与各个消息队列通信的异步消息处理器;在所述消息处理任务运行环境中执行包括至少一个雪崩测试用例的测试任务,每个所述雪崩测试用例中均通过调用至少一个异常注入原子操作产生消息处理异常;所述测试任务中参与进行消息处理的消息数量大于预设阈值;获取所述测试任务对应的测试结果。本发明专利技术操作简单、结果精确,可以极大提升异步消息系统雪崩测试场景构造的效率。

【技术实现步骤摘要】
消息处理任务测试方法、装置、系统、设备及介质
本专利技术涉及测试领域,尤其涉及消息处理任务测试方法、装置、系统、设备及介质。
技术介绍
复杂系统通常可以用于运行大数据量的消息处理任务,消息处理任务的数据量对复杂系统而言也有可能产生压力,对其鲁棒性是一个严峻考验,比如,若某个复杂系统的鲁棒性不足,则其经常会出现某个基础服务不可用造成整个系统不可用的情况,这种现象被称为服务雪崩效应,要形成大规模故障或总体失效,只有一个模式,那就是系统一开始出现了局部的、小规模的故障,然而由于种种原因,故障影响的范围越来越大,最终导致了全局性的后果,这就是雪崩效应产生的原因。雪崩效应带来的伤害是巨大的,因此,有必要对复杂系统进行雪崩测试,但是目前尚未有成熟的基于复杂系统全流程的雪崩测试场景模拟工具。测试时主要通过手动的方式构造各种异常场景,使得某个模块或者某个链路不可用,观察是否在大数据量压力下出现雪崩,以此来达到测试的目的。然而,现有技术对于复杂系统的全流程雪崩测试,异常场景多,操作复杂,耗时,效率低下,并且难以满足对于用于运行异步消息处理任务的系统的测试本文档来自技高网...

【技术保护点】
1.一种消息处理任务测试方法,其特征在于,所述方法包括:/n封装异常注入原子操作,所述异常注入原子操作为通过注入消息处理流程来引发消息处理异常的最小完整操作;/n获取消息处理任务运行环境;所述消息处理任务运行环境包括为每个消息生产者和每个消息消费者均设置的消息队列,以及用于与各个消息队列通信的异步消息处理器,所述异步消息处理器用于实现消息生产者与消息消费者之间的消息交互;/n在所述消息处理任务运行环境中执行包括至少一个雪崩测试用例的测试任务,每个所述雪崩测试用例中均通过调用至少一个异常注入原子操作产生消息处理异常;所述测试任务中参与进行消息处理的消息数量大于预设阈值;/n获取所述测试任务对应的...

【技术特征摘要】
1.一种消息处理任务测试方法,其特征在于,所述方法包括:
封装异常注入原子操作,所述异常注入原子操作为通过注入消息处理流程来引发消息处理异常的最小完整操作;
获取消息处理任务运行环境;所述消息处理任务运行环境包括为每个消息生产者和每个消息消费者均设置的消息队列,以及用于与各个消息队列通信的异步消息处理器,所述异步消息处理器用于实现消息生产者与消息消费者之间的消息交互;
在所述消息处理任务运行环境中执行包括至少一个雪崩测试用例的测试任务,每个所述雪崩测试用例中均通过调用至少一个异常注入原子操作产生消息处理异常;所述测试任务中参与进行消息处理的消息数量大于预设阈值;
获取所述测试任务对应的测试结果。


2.根据权利要求1所述的方法,其特征在于:
所述消息处理任务运行环境中,每个线程均设置其对应的消息代理器,以用于执行消息队列的任务,各个线程均与异步消息处理器通信;所述异步消息处理器中基于订阅关系进行消息处理,一个主题和一个消息消费者唯一确定一条订阅关系,在异步消息处理器中每个主题单独使用一个消息队列进行管理;消息消费者根据主题在其对应的消息队列提取消息进行消费。


3.根据权利要求1所述的方法,其特征在于:
所述测试任务还包括正常用例,异常用例和稳定性用例;
所述测试结果包括是否发生雪崩、消息处理质量测试结果和消息处理性能测试结果。


4.一种消息处理任务测试装置,其特征在于,所述装置包括:
异常注入原子操作封装模块,用于封装异常注入原子操作,所述异常注入原子操作为通过注入消息处理流程来引发消息处理异常的最小完整操作;
消息处理任务运行环境获取模块,用于获取消息处理任务运行环境;所述消息处理任务运行环境包括为每个消息生产者和每个消息消费者均设置的消息队列,以及用于与各个消息队列通信的异步消息处理器,所述异步消息处理器用于实现消息生产者与消息消费者之间的消息交互;
测试任务执行模块,用于在所述消息处理任务运行环境中执行包括至少一个雪崩测试用例的测试任务,每个所述雪崩测试用例中均通过调用至少一个异常注入原子操作产生消息处理异常;所述测试任务中参与进行消息处理的消息数量大于预设阈值;
测试结果获取模块,用于获取所述测试任务对应的测试结果。


5.一种消息处理任务测试系统,所述消息处理任务测试系统用于执行权利要求1所述的一种消息处理任务测试方法,其特征在于,所述系统还包括:
公共管理模...

【专利技术属性】
技术研发人员:罗彩云
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1