服务端的测试方法、装置、存储介质、计算机设备制造方法及图纸

技术编号:37769927 阅读:22 留言:0更新日期:2023-06-06 13:33
本申请提供了一种服务端的测试方法、装置、存储介质、计算机设备。该方法包括:展示包括多个待选服务器的第一界面;响应于针对第一界面的选取操作,确定目标服务器;判断目标服务器是否已挂载测试插件;测试插件被配置为在所挂载的服务器中针对redis语句进行插桩,以及在所挂载的服务器接收到调用请求时,利用插桩,获取目标信息,目标信息包括调用请求中的redis语句、redis语句的入参和返回值;若是,则调用测试插件得到目标信息;若否,则将测试插件挂载到目标服务器,并调用测试插件得到目标信息;展示目标信息。该方法可以动态感知redis语句,以插件的形式挂载于服务器,测试插件可以一键式完成加载和卸载,属于非侵入式测试,可提高测试效率。可提高测试效率。可提高测试效率。

【技术实现步骤摘要】
服务端的测试方法、装置、存储介质、计算机设备


[0001]本申请涉及测试
,尤其涉及一种服务端的测试方法、装置、存储介质、计算机设备。

技术介绍

[0002]在互联网的相关应用中redis(Remote Dictionary Server,远程字典服务)的使用相当频繁,其是一个支持网络、可基于内存、分布式、可选持久性的键值对(Key

Value)存储数据库,其具备高速缓存和读取的优点。在使用redis的过程中,为了优化代码或提高使用效率,需要在测试过程中了解redis服务器需要响应哪些语句以及各语句的使用情况等。传统技术中,需要在所有使用了redis语句的代码中进行硬编码,该方式是属于侵入性测试,待测试完成后还需要重新删除额外的代码,存在测试效率低、灵活性差的问题。

技术实现思路

[0003]本申请的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中健壮性测试结果不够准确的技术缺陷。
[0004]第一方面,本申请实施例提供了一种服务端的测试方法,包括:
[0005]展示包括多个待选服务器的第一界面;
[0006]响应于针对第一界面的选取操作,确定目标服务器;
[0007]判断目标服务器是否已挂载测试插件;测试插件被配置为在所挂载的服务器中针对redis语句进行插桩,以及在所挂载的服务器接收到调用请求时,利用插桩,获取目标信息,目标信息包括调用请求中的redis语句、redis语句的入参和返回值;
[0008]若是,则调用测试插件得到目标信息;
[0009]若否,则将测试插件挂载到目标服务器,并调用测试插件得到目标信息;
[0010]展示目标信息。
[0011]在其中一个实施例中,展示目标信息,包括:
[0012]对目标信息进行分析,得到有关redis语句的分析报告;
[0013]展示目标信息和分析报告。
[0014]在其中一个实施例中,分析报告包括目标信息中各redis语句的时间复杂度,对目标信息进行分析,包括:
[0015]根据redis语句与时间复杂度之间的对应关系,得到目标信息中各redis语句的时间复杂度。
[0016]在其中一个实施例中,分析报告包括第一判断结果,对目标信息进行分析,包括:
[0017]判断目标信息中各redis语句之间是否会访问相同或相似的键,得到第一判断结果。
[0018]在其中一个实施例中,分析报告包括第二判断结果,对目标信息进行分析,包括:
[0019]判断目标信息中是否存在第一设置语句,得到第二判断结果;第一设置语句用于
为目标键设置过期时间。
[0020]在其中一个实施例中,针对redis语句进行插桩,包括:
[0021]获取redis语句的所有语句类型;
[0022]在所挂载的服务器设置各语句类型对应的插桩。
[0023]在其中一个实施例中,测试插件是基于jvm

sandbox配置的。
[0024]第二方面,本申请实施例提供一种服务端的测试装置,包括:
[0025]第一展示模块,用于展示包括多个待选服务器的第一界面;
[0026]目标确定模块,用于响应于针对第一界面的选取操作,确定目标服务器;
[0027]判断模块,用于判断目标服务器是否已挂载测试插件;测试插件被配置为在所挂载的服务器中针对redis语句进行插桩,以及在所挂载的服务器接收到调用请求时,利用插桩,获取目标信息,目标信息包括调用请求中的redis语句、redis语句的入参和返回值;
[0028]第一执行模块,用于在目标服务器已挂载测试插件的情况下调用测试插件得到目标信息;
[0029]第二执行模块,用于在目标服务器未挂载测试插件的情况下将测试插件挂载到目标服务器,并调用测试插件得到目标信息;
[0030]第二展示模块,用于展示目标信息。
[0031]第三方面,本申请实施例提供一种计算机设备,包括一个或多个处理器,以及存储器,存储器中存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时,执行上述任一实施例中的测试方法的步骤。
[0032]第四方面,本申请实施例提供一种存储介质,存储介质中存储有计算机可读指令,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述任一实施例中的测试方法的步骤。
[0033]从以上技术方案可以看出,本申请实施例具有以下优点:
[0034]基于上述任一实施例,可以由测试人员在第一界面上灵活选择需要进行redis语句相关测试的目标服务器。对于已挂载测试插件的目标服务器,直接使用测试插件获取和redis语句有关的目标信息,对于未挂载测试插件的目标服务器也可自动实现测试插件的挂载,并获取目标信息,最后将目标信息展示给测试人员,方便测试人员优化redis语句。该方法可以动态感知redis语句,以插件的形式挂载于服务器,测试插件可以一键式完成加载和卸载,属于非侵入式测试,不会留下痕迹,使用更为灵活且提高了测试效率。
附图说明
[0035]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0036]图1为本申请一个实施例提供的服务端测试方法的流程示意图;
[0037]图2为本申请实施例提供的计算机设备的内部结构图。
具体实施方式
[0038]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0039]第一方面,本申请提供了一种服务端的测试方法,请参阅图1,包括步骤S102至步骤S112。
[0040]S102,展示包括多个待选服务器的第一界面。
[0041]可以理解,待选服务器为需要进行测试的redis服务器,可以在第一界面上将所有待选服务器都展示出来,用户可以对第一界面中的待选服务器进行编辑,即添加或减少待选服务器。
[0042]S104,响应于针对第一界面的选取操作,确定目标服务器。
[0043]用户在第一界面上可以选择进行测试的待选服务器,被选取操作选中的待选服务器即为目标服务器,目标服务器将测试。
[0044]S106,判断目标服务器是否已挂载测试插件。
[0045]可以理解,当待选服务器数量较多时,对待选服务器进行一一配置的工作效率很低,因此,将相关逻辑配置为测试插件,通过调用挂载在服务器上的测试组件进行测试。而测试插件被配置为:在所挂载的服务器中针对redis语句本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务端的测试方法,其特征在于,包括:展示包括多个待选服务器的第一界面;响应于针对所述第一界面的选取操作,确定目标服务器;判断所述目标服务器是否已挂载测试插件;所述测试插件被配置为在所挂载的服务器中针对redis语句进行插桩,以及在所挂载的服务器接收到调用请求时,利用所述插桩,获取目标信息,所述目标信息包括所述调用请求中的redis语句、redis语句的入参和返回值;若是,则调用所述测试插件得到所述目标信息;若否,则将所述测试插件挂载到所述目标服务器,并调用所述测试插件得到所述目标信息;展示所述目标信息。2.根据权利要求1所述的方法,其特征在于,所述展示所述目标信息,包括:对所述目标信息进行分析,得到有关redis语句的分析报告;展示所述目标信息和所述分析报告。3.根据权利要求2所述的方法,其特征在于,所述分析报告包括所述目标信息中各redis语句的时间复杂度,所述对所述目标信息进行分析,包括:根据redis语句与所述时间复杂度之间的对应关系,得到所述目标信息中各redis语句的所述时间复杂度。4.根据权利要求2所述的方法,其特征在于,所述分析报告包括第一判断结果,所述对所述目标信息进行分析,包括:判断所述目标信息中各redis语句之间是否会访问相同或相似的键,得到所述第一判断结果。5.根据权利要求2所述的方法,其特征在于,所述分析报告包括第二判断结果,所述对所述目标信息进行分析,包括:判断所述目标信息中是否存在第一设置语句,得到所述第二判断结果;所述第一设置语句用于为目标键设置过期时间。6.根据权利要求1所述的方法...

【专利技术属性】
技术研发人员:周浩
申请(专利权)人:唯品会广州软件有限公司
类型:发明
国别省市:

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

1