虚拟对象匹配方法、虚拟对象匹配装置以及存储介质与流程

文档序号:33013932发布日期:2023-01-20 14:50阅读:38来源:国知局
虚拟对象匹配方法、虚拟对象匹配装置以及存储介质与流程

1.本技术涉及软件测试领域,特别是涉及一种虚拟对象匹配方法、虚拟对象匹配装置以及计算机存储介质。


背景技术:

2.随着互联网行业的不断发展,在软件开发过程中软件的规模越来越大且结构复杂,其中每个软件都由各种不同功能的模块组成,且各个模块之间的功能相互影响,因此在对一个模块进行测试时,需要同时模拟出其他模块的效果,这时就可以使用虚拟对象。
3.在一应用场景中,对于虚拟对象的使用需要根据具体要模拟的模块所涉及的请求参数来进行匹配,现有的匹配方法有两种,字符模糊匹配与正则表达式匹配。字符模糊匹配的匹配规则不够灵活,正则表达式的匹配规则范围过大,容易造成误匹配。


技术实现要素:

4.本技术主要解决的技术问题是如何更好匹配合适的虚拟对象,对此,本技术提供一种虚拟对象匹配方法、虚拟对象匹配装置以及计算机存储介质。
5.为解决上述技术问题,本技术采用的一个技术方案是:提供一种虚拟对象匹配方法,该方法包括:基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息;遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息;若是,则返回虚拟对象作为匹配信息。
6.其中,在基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息之后,还包括:基于请求参数信息获取虚拟对象的匹配规则。
7.其中,遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息,包括:遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含满足匹配规则的请求参数信息。
8.其中,匹配方法还包括:若虚拟对象不包含请求参数信息,则将请求指令转发至对应的真实代码中;将请求参数信息代入真实代码中获取真实结果。
9.其中,在返回虚拟对象作为匹配信息之后,还包括:将请求参数信息代入虚拟对象中获取虚拟结果。
10.其中,匹配方法还包括:基于用户的第二请求指令,创建虚拟对象的匹配规则;将匹配规则保存至文本文件中,文本文件中的匹配规则用于判断虚拟对象是否包含请求参数信息。
11.其中,将匹配规则保存至文本文件中,包括:提取匹配规则中的函数名;判断函数名在函数列表中是否存在;若否,则将匹配规则保存至文本文件中。
12.其中,在将匹配规则保存至文本文件中之前,还包括:检查匹配规则是否存在语法错误;若是,则提醒用户修正语法错误。
13.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种虚拟对象匹配
装置,该虚拟对象匹配装置包括处理器和存储器,存储器与处理器耦接,存储器存储有程序数据,处理器用于执行程序数据以实现如上述的虚拟对象匹配方法。
14.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质存储有程序数据,程序数据在被执行时,用于实现上述的虚拟对象匹配方法。
15.本技术的有益效果是:区别于现有技术的情况,本技术提供的虚拟对象匹配方法应用于虚拟对象匹配装置,虚拟对象匹配装置基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息;遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息;若是,则返回虚拟对象作为匹配信息。通过上述方式,与常规的虚拟对象匹配方法相比,本技术采用的通过获取用户请求中包含的虚拟对象所在地址与虚拟对象所包含的请求参数信息并根据请求参数信息匹配对应的虚拟对象的方法,能够通过用户的自定义请求自定义匹配模拟对象的匹配规则,以选择到最合适的虚拟对象。本虚拟对象匹配方法能够灵活调整匹配规则,缩小匹配范围,使得匹配结果更加精确,减少了由于虚拟对象误匹配所造成的时间与人力的浪费。
附图说明
16.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
17.图1是本技术提供的虚拟对象匹配方法一实施例的流程示意图;
18.图2是本技术提供的虚拟对象匹配装置执行虚拟对象匹配方法的流程示意图;
19.图3是本技术提供的虚拟对象匹配装置第一实施例的结构示意图;
20.图4是本技术提供的虚拟对象匹配装置第二实施例的结构示意图;
21.图5是本技术提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
22.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
23.参阅图1和图2,图1是本技术提供的虚拟对象匹配方法一实施例的流程示意图;图2是本技术提供的虚拟对象匹配装置执行虚拟对象匹配方法的流程示意图。
24.在实际的软件开发过程中,会有一个模块依赖于另一个模块的情况,在对该模块进行测试时,可能会出现被依赖的模块还未完全开发完毕或该模块不稳定的情况,导致测试工作无法正常进行。因此,可以引入虚拟模块来模拟该被依赖模块所实现的功能,以便于测试。虚拟模块就是真实模块在测试期间的替代品。
25.步骤11:基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息。
26.具体地,用户可以将能够满足自己需要的虚拟对象的需求输入虚拟模块匹配装
置,虚拟模块匹配装置根据用户的需求,获取需求中虚拟对象所在的地址与虚拟对象中需要包含的请求参数。其中,用户还会将待测试的模块信息一起输入虚拟模块匹配装置中,用于后续的模拟测试。
27.具体地,虚拟模块匹配装置在此之后,还会基于请求参数信息获取虚拟对象的匹配规则。其中,匹配规则限定了哪些虚拟对象能够满足用户的需求,其中包括虚拟对象中的请求参数包含的信息。
28.在本技术一实施例中,虚拟模块匹配装置还能基于用户的第二请求指令,创建虚拟对象的匹配规则;将匹配规则保存至文本文件中,文本文件中的匹配规则用于判断虚拟对象是否包含请求参数信息。通过自定义虚拟对象的匹配规则,用户可以灵活地增加其中的条件逻辑判断等信息,减小匹配范围,让匹配规则更加精确。
29.参阅图2,用户可以基于具体的测试需要,利用虚拟模块匹配装置在线编写虚拟对象的匹配规则,对于一些具有特殊特征的虚拟对象也能很好进行匹配。且虚拟模块匹配装置可以根据修改匹配规则以避免出现匹配规则的范围太大而出现误匹配的情况,能够有效提高虚拟对象匹配的工作效率。
30.具体地,虚拟模块匹配装置在将匹配规则保存的过程中,还会触发虚拟模块匹配装置中所带有的语法检查机制,如果匹配规则中出现语法异常的情况,则会向用户提示语法异常的信息,并需要用户对匹配规则进行修改至没有语法错误后才能将匹配规则保存至虚拟模块匹配装置中。
31.具体地,虚拟模块匹配装置对匹配规则进行语法检查之后,还会提取该匹配规则的函数名,并判断该函数名在虚拟模块匹配装置中存储的虚拟对象列表中是否存在,若存在则会向用户提示修改匹配规则的函数名,直至函数名与虚拟对象列表中的函数名不重复,才能成功在虚拟模块匹配装置中保存该匹配规则。虚拟模块匹配装置通过语法与函数名的两次检查,减少了存储的虚拟对象匹配规则出错的概率,保证后续的虚拟对象匹配能够稳定运行。且匹配规则分别存储在不同的地址下,保证了各个函数之间独立运行,互不干扰,保障了后续匹配的独立性与稳定性,避免了出现因某一匹配规则出错而造成整个虚拟模块匹配装置出现异常的情况。
32.步骤12:遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息。
33.继续参阅图2,虚拟模块匹配装置会遍历步骤11中获得的地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含满足匹配规则的请求参数信息。如果虚拟对象并没有匹配上,则会进行下一个虚拟对象的判断,直至遍历完所有的虚拟对象。如果虚拟对象包含满足匹配规则的请求参数信息,则进入步骤13。
34.具体地,当虚拟模块匹配装置遍历完虚拟对象列表中所有的虚拟对象都没有找到满足用户输入请求的虚拟对象时,会将用户的请求发送到真实的请求地址,将请求中的请求参数信息代入真实的请求地址下的真实代码中获取真实结果,再将真实结果输出展示给用户。
35.步骤13:返回虚拟对象作为匹配信息。
36.请继续参阅图2,若虚拟模块匹配装置找到与用户请求匹配的虚拟对象,则将该虚拟对象作为匹配信息,并将用户请求代入到该匹配信息中得到虚拟结果。
37.区别于现有技术的情况,本技术提供的虚拟对象匹配方法应用于虚拟对象匹配装置,虚拟对象匹配装置基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息;遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息;若是,则返回虚拟对象作为匹配信息。通过上述方式,与常规的虚拟对象匹配方法相比,本技术采用的通过获取用户请求中包含的虚拟对象所在地址与虚拟对象所包含的请求参数信息并根据请求参数信息匹配对应的虚拟对象的方法,能够通过用户的自定义请求自定义匹配模拟对象的匹配规则,以选择到最合适的虚拟对象。本虚拟对象匹配方法能够灵活调整匹配规则,缩小匹配范围,使得匹配结果更加精确,减少了由于虚拟对象误匹配所造成的时间与人力的浪费。
38.上述实施例的方法,可以利用一虚拟对象匹配装置来实现,下面结合图3进行描述,图3是本技术提供的虚拟对象匹配装置第一实施例的结构示意图。
39.如图3所示,本技术实施例的虚拟对象匹配装置30包括获取模块31、判断模块32、匹配模块33。
40.其中,获取模块31,用于基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息。
41.判断模块32,用于遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息。
42.匹配模块33,用于在虚拟对象包含请求参数信息时,返回虚拟对象作为匹配信息。
43.上述实施例的方法,可以利用一虚拟对象匹配装置来实现,下面结合图4,图4是本技术提供的虚拟对象匹配装置第二实施例的结构示意图,该虚拟对象匹配装置40包括存储器41和处理器42,存储器41用于存储程序数据,处理器42用于执行程序数据以实现如下的方法:
44.基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息;遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息;若是,则返回虚拟对象作为匹配信息。
45.参阅图5,图5是本技术提供的计算机可读存储介质一实施例的结构示意图,该计算机可读存储介质50存储有程序数据51,程序数据51在被处理器执行时,用于实现如下的方法:
46.基于用户的第一请求指令,获取虚拟对象的地址信息及请求参数信息;遍历地址信息下虚拟对象列表中所有虚拟对象,判断虚拟对象是否包含请求参数信息;若是,则返回虚拟对象作为匹配信息。
47.本技术的实施例以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
48.以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1