技术新讯 > 电子通信装置的制造及其应用技术 > 一种测试装置、方法及电子设备与流程  >  正文

一种测试装置、方法及电子设备与流程

  • 国知局
  • 2024-08-02 15:00:33

本技术涉及通信,尤其涉及一种测试装置、方法及电子设备。

背景技术:

1、roceketmq是一种具备异步解耦和削峰填谷能力的开源分布式消息中间件。如图1所示,roceketmq主要由四个角色组成,分别为服务注册中心(nameserver)、生产者(producer)、消费者(consumer)、消息服务器(broker)。

2、其中,nameserver用于broker的注册以及producer与consumer对broker的路由信息的发现;producer用于生产消息并发送消息至broker;consumer用于从broker接收消息并消费消息;broker用于暂存和传输消息。

3、基于roceketmq异步解耦和削峰填谷的能力,roceketmq可以在高并发、高吞吐量的场景下,实现可靠的消息传输,从而在各个领域得到了广泛应用。

4、在应用rocketmq时,需要对rocketmq的性能进行测试,如通过性能测试得到rocketmq能承载的最高每秒查询率(英文:queries per second,缩写为qps),以便于保证rocketmq在应用中的可靠性和稳定性。

5、当前,在针对rocketmq进行性能测试时,均是基于java编写测试工具(jmeter)的方式来对rocketmq中的producer进行的性能测试,而不存在对rocketmq中的consumer进行的性能测试,从而无法评估consumer的性能。

技术实现思路

1、本技术提供了一种测试装置、方法及电子设备,用以实现对rocketmq中的consumer的性能进行测试,从而实现consumer的性能评估的效果。具体实现方案如下:

2、第一方面,本技术提供了一种测试装置,包括处理器和存储器,所述存储器用于存储所述处理器可执行的程序,所述处理器用于读取所述存储器中的程序并执行如下步骤:

3、基于包含时间参数的消费者参数集,生成消费者初始脚本;其中,所述时间参数用于计算针对消息的各个操作对应的时长;

4、配置所述消费者初始脚本中的所述消费者参数集中的参数各自对应的参数值,得到消费者测试脚本;

5、指示测试工具执行所述消费者测试脚本,得到消费者性能测试结果。

6、通过上述申请实施例,基于包含时间参数的消费者参数集,生成了消费者初始脚本。该时间参数用于计算针对消息的各个操作对应的时长,从而基于消费者初始脚本中的时间参数,可以计算出针对消息的各个操作对应的时长,进而基于计算出的时长,可以确定consumer对应的性能指标所对应的指标值,有利于对consumer的性能进行评估。

7、在生成消费者初始脚本后,配置消费者参数集中的参数各自对应的参数值,得到消费者测试脚本,再指示测试工具执行该消费者测试脚本,得到消费者性能测试结果,从而实现了对consumer性能的测试,进而该测试得到的消费者性能测试结果,可以对consumer的性能进行评估。

8、在一种可能的实施方式中,所述消费者参数集还包括消费者组模型参数、消费起始点参数、消费类型参数、消息消费模式参数,所述消费者组模型参数用于确定客户端与消费者组之间的关系,所述消费起始点参数用于确定消费的起始消息,所述消费类型参数用于确定消费者的消费模式为拉取消息模式或者推送消息模式,所述消息消费模式参数用于确定消息的消费模式为集群消费或者广播消费,所述时间参数包括起始时间与结束时间,所述处理器具体被配置为执行:

9、生成用于接收指示信息的消费者界面;其中,所述消费者界面至少包括消费者组模型参数栏、消费起始点参数栏、消费类型参数栏、消息消费模式参数栏、起始时间参数栏与结束时间参数栏;

10、分别在所述消费者组模型参数栏、所述消费起始点参数栏、所述消费类型参数栏、所述消息消费模式参数栏、所述起始时间参数栏与所述结束时间参数栏中,添加对应的可选参数值;

11、基于所述消费者组模型参数栏、所述消费起始点参数栏、所述消费类型参数栏、所述消息消费模式参数栏、所述起始时间参数栏与所述结束时间参数栏各自对应的可选参数值,生成所述消费者初始脚本。

12、通过上述申请实施例,在生成的用于接收指示信息的消费者界面中的各个参数栏,添加对应的可选参数值,再基于各个参数栏对应的各个可选参数值,生成消费者初始脚本,从而为consumer的性能的测试提供了初始脚本,有利于实现对consumer性能的评估。

13、此外,基于消费者界面中的消费者组模型参数栏、消费起始点参数栏、消费类型参数栏、消息消费模式参数栏、起始时间参数栏与结束时间参数栏各自对应的参数,可以确定客户端与消费者组之间的关系、消费的起始消息、消费者的消费模式、消息的消费模式以及时长的计算,从而基于该信息,有利于确定consumer对应的消费者性能测试指标对应的指标值。

14、在一种可能的实施方式中,若所述消费类型参数栏对应的参数值为所述拉取消息模式,则所述起始时间参数栏对应的可选参数值包括第一起始时间、第二起始时间、第三起始时间,所述结束时间参数栏对应的可选参数值包括第一结束时间、第二结束时间、第三结束时间;其中,所述第一起始时间为执行拉取消息操作的开始时间,所述第二起始时间为生产消息的时间,所述第三起始时间为消息服务器保存消息到存储文件的时间,所述第一结束时间为执行所述拉取消息操作的结束时间,所述第二结束时间为所述消息服务器保存消息到所述存储文件的时间,所述第三起始时间为所述消费者拉取到消息的时间;

15、若所述消费类型参数栏对应的参数值为所述推送消息模式,则所述起始时间参数栏对应的可选参数值包括所述第二起始时间、所述第三起始时间,所述结束时间参数栏对应的可选参数值包括所述第二结束时间、所述第三结束时间。

16、通过上述申请实施例,基于消费者类型参数栏对应的参数值,确定了起始时间参数栏与结束时间参数栏各自对应的可选参数值,为consumer不同的消费模式提供了不同的时长计算,并且,有利于计算针对消息的指定操作所对应的时长,进而有利于确定consumer对应的性能测试指标所对应的指标值。

17、在一种可能的实施方式中,所述处理器具体被配置为执行:

18、将所述消费者初始脚本组装成对应的消费者插件;

19、在所述测试工具中安装所述消费者插件。

20、通过上述申请实施例,将消费者初始脚本组装成对应的消费者插件,再在测试工具中安装消费者插件,从而采用插件的方式有利于提高性能测试的效率,并使得消费者初始脚本变得更加便利和易用,大大增强了消费者初始脚本的灵活性和可扩展性。

21、在一种可能的实施方式中,所述处理器具体被配置为执行:

22、基于所述消费者初始脚本创建的消费者界面,接收消费者指示信息;其中,所述消费者指示信息指示所述消费者初始脚本中的所述消费者参数集中的参数各自对应的参数值;

23、基于所述消费者指示信息,配置所述消费者参数集中的参数各自对应的参数值。

24、通过上述申请实施例,基于消费者初始脚本创建的消费者界面来接收指示消费者参数集中的参数各自对应的参数值的消费者指示信息,再基于消费者指示信息来配置消费者参数集中的参数各自对应的参数值,使得消费者初始脚本中的消费者参数集中的参数各自对应的参数值符合应用场景需求,从而可以得到用于测试consumer性能的消费者测试脚本。

25、在一种可能的实施方式中,所述处理器具体被配置为执行:

26、指示所述测试工具执行所述消费者测试脚本,得到消费者性能测试指标对应的指标值;

27、判断所述消费者性能测试指标对应的指标值是否符合预设条件;

28、若否,确定所述消费者性能测试结果包括消费者的性能不符合预期;

29、若是,确定所述消费者性能测试结果包括所述消费者的性能符合所述预期。

30、通过上述申请实施例,基于消费者性能测试指标对应的指标值与预设条件的比较结果,确定了consumer的性能是否符合预期,从而实现了对consumer性能的评估。

31、在一种可能的实施方式中,所述处理器具体被配置为执行:

32、针对生产者初始脚本中的生产者参数集,配置所述生产者参数集中的参数各自对应的参数值,得到生产者测试脚本;

33、指示所述测试工具执行所述生产者测试脚本,得到生产者性能测试结果;

34、基于所述消费者性能测试结果与所述生产者性能测试结果,确定所述消费者与生产者对应的待测试软件的性能测试结果。

35、通过上述申请实施例,基于生产者初始脚本中的生产者参数集中的参数各自对应的参数值的配置,得到了生产者测试脚本,再基于生产者测试脚本的执行所得到的生产者性能测试结果,实现了对producer性能的评估,从而基于生产者性能测试结果与消费者性能测试结果,确定了待测试软件的性能测试结果,进而实现了对待测试软件性能的全面评估。

36、在一种可能的实施方式中,所述生产者参数集还包括生产者组模型参数、延时类型参数与延时时间参数,所述生产者组模型参数用于确定客户端与生产者组之间的关系,所述延时类型参数用于确定延时消息的类型,所述延时时间参数用于确定所述延时消息延时的时长,所述处理器具体被配置为执行:

37、生成用于接收指示信息的生产者界面;其中,所述生产者界面至少包括生产者组模型参数栏、延时类型参数栏与延时时间参数栏;

38、分别在所述生产者组模型参数栏、所述延时类型参数栏与所述延时时间参数栏中,添加对应的可选参数值;

39、基于所述生产者组模型参数栏、所述延时类型参数栏与所述延时时间参数栏各自对应的可选参数值,生成所述生产者初始脚本。

40、通过上述申请实施例,在生成的用于接收指示信息的生产者界面中的各个参数栏,添加对应的可选参数值,再基于各个参数栏对应的各个可选参数值,生成生产者初始脚本,从而为producer的性能的测试提供了初始脚本,有利于实现对producer性能的评估。

41、此外,基于生产者界面中的消生产者组模型参数栏、延时类型参数栏与延时时间参数栏各自对应的参数,可以确定客户端与生产者组之间的关系、延时消息的类型以及延时消息延时的时长,从而基于该信息,有利于确定producer对应的生产者性能测试指标对应的指标值。

42、第二方面,本技术提供了一种测试方法,所述方法包括:

43、基于包含时间参数的消费者参数集,生成消费者初始脚本;其中,所述时间参数用于计算针对消息的各个操作对应的时长;

44、配置所述消费者初始脚本中的所述消费者参数集中的参数各自对应的参数值,得到消费者测试脚本;

45、指示测试工具执行所述消费者测试脚本,得到消费者性能测试结果。

46、在一种可能的实施方式中,所述消费者参数集还包括消费者组模型参数、消费起始点参数、消费类型参数、消息消费模式参数,所述消费者组模型参数用于确定客户端与消费者组之间的关系,所述消费起始点参数用于确定消费的起始消息,所述消费类型参数用于确定消费者的消费模式为拉取消息模式或者推送消息模式,所述消息消费模式参数用于确定消息的消费模式为集群消费或者广播消费,所述时间参数包括起始时间与结束时间,则所述基于包含时间参数的消费者参数集,生成消费者初始脚本,包括:

47、生成用于接收指示信息的消费者界面;其中,所述消费者界面至少包括消费者组模型参数栏、消费起始点参数栏、消费类型参数栏、消息消费模式参数栏、起始时间参数栏与结束时间参数栏;

48、分别在所述消费者组模型参数栏、所述消费起始点参数栏、所述消费类型参数栏、所述消息消费模式参数栏、所述起始时间参数栏与所述结束时间参数栏中,添加对应的可选参数值;

49、基于所述消费者组模型参数栏、所述消费起始点参数栏、所述消费类型参数栏、所述消息消费模式参数栏、所述起始时间参数栏与所述结束时间参数栏各自对应的可选参数值,生成所述消费者初始脚本。

50、在一种可能的实施方式中,若所述消费类型参数栏对应的参数值为所述拉取消息模式,则所述起始时间参数栏对应的可选参数值包括第一起始时间、第二起始时间、第三起始时间,所述结束时间参数栏对应的可选参数值包括第一结束时间、第二结束时间、第三结束时间;其中,所述第一起始时间为执行拉取消息操作的开始时间,所述第二起始时间为生产消息的时间,所述第三起始时间为消息服务器保存消息到存储文件的时间,所述第一结束时间为执行所述拉取消息操作的结束时间,所述第二结束时间为所述消息服务器保存消息到所述存储文件的时间,所述第三起始时间为所述消费者拉取到消息的时间;

51、若所述消费类型参数栏对应的参数值为所述推送消息模式,则所述起始时间参数栏对应的可选参数值包括所述第二起始时间、所述第三起始时间,所述结束时间参数栏对应的可选参数值包括所述第二结束时间、所述第三结束时间。

52、在一种可能的实施方式中,在所述配置所述消费者初始脚本中的所述消费者参数集中的参数各自对应的参数值之前,还包括:

53、将所述消费者初始脚本组装成对应的消费者插件;

54、在所述测试工具中安装所述消费者插件。

55、在一种可能的实施方式中,所述配置所述消费者初始脚本中的所述消费者参数集中的参数各自对应的参数值,包括:

56、基于所述消费者初始脚本创建的消费者界面,接收消费者指示信息;其中,所述消费者指示信息指示所述消费者初始脚本中的所述消费者参数集中的参数各自对应的参数值;

57、基于所述消费者指示信息,配置所述消费者参数集中的参数各自对应的参数值。

58、在一种可能的实施方式中,所述指示测试工具执行所述消费者测试脚本,得到消费者性能测试结果,包括:

59、指示所述测试工具执行所述消费者测试脚本,得到消费者性能测试指标对应的指标值;

60、判断所述消费者性能测试指标对应的指标值是否符合预设条件;

61、若否,确定所述消费者性能测试结果包括消费者的性能不符合预期;

62、若是,确定所述消费者性能测试结果包括所述消费者的性能符合所述预期。

63、在一种可能的实施方式中,所述方法还包括:

64、针对生产者初始脚本中的生产者参数集,配置所述生产者参数集中的参数各自对应的参数值,得到生产者测试脚本;

65、指示所述测试工具执行所述生产者测试脚本,得到生产者性能测试结果;

66、基于所述消费者性能测试结果与所述生产者性能测试结果,确定所述消费者与生产者对应的待测试软件的性能测试结果。

67、在一种可能的实施方式中,所述生产者参数集还包括生产者组模型参数、延时类型参数与延时时间参数,所述生产者组模型参数用于确定客户端与生产者组之间的关系,所述延时类型参数用于确定延时消息的类型,所述延时时间参数用于确定所述延时消息延时的时长,则在所述针对生产者初始脚本中的生产者参数集,配置所述生产者参数集中的参数各自对应的参数值之前,还包括:

68、生成用于接收指示信息的生产者界面;其中,所述生产者界面至少包括生产者组模型参数栏、延时类型参数栏与延时时间参数栏;

69、分别在所述生产者组模型参数栏、所述延时类型参数栏与所述延时时间参数栏中,添加对应的可选参数值;

70、基于所述生产者组模型参数栏、所述延时类型参数栏与所述延时时间参数栏各自对应的可选参数值,生成所述生产者初始脚本。

71、第三方面,本技术提供了一种电子设备,包括:

72、存储器,用于存放计算机程序;

73、处理器,用于执行所述存储器上所存放的计算机程序时,实现上述的一种测试方法步骤。

74、第四方面,本技术提供了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述的一种测试方法步骤。

75、上述第二方面至第四方面中的各个方面以及各个方面可能达到的技术效果请参照上述针对第一方面或第一方面中的各种可能方案可以达到的技术效果说明,这里不再重复赘述。

本文地址:https://www.jishuxx.com/zhuanli/20240801/244632.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。