CN112100079A - 基于模拟数据调用的测试方法、系统和电子设备 - Google Patents

基于模拟数据调用的测试方法、系统和电子设备 Download PDF

Info

Publication number
CN112100079A
CN112100079A CN202011200582.XA CN202011200582A CN112100079A CN 112100079 A CN112100079 A CN 112100079A CN 202011200582 A CN202011200582 A CN 202011200582A CN 112100079 A CN112100079 A CN 112100079A
Authority
CN
China
Prior art keywords
simulation
dubbo
data
request
center platform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011200582.XA
Other languages
English (en)
Other versions
CN112100079B (zh
Inventor
王涛
肖至
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qilu Information Technology Co Ltd
Original Assignee
Beijing Qilu Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qilu Information Technology Co Ltd filed Critical Beijing Qilu Information Technology Co Ltd
Priority to CN202011200582.XA priority Critical patent/CN112100079B/zh
Publication of CN112100079A publication Critical patent/CN112100079A/zh
Application granted granted Critical
Publication of CN112100079B publication Critical patent/CN112100079B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Abstract

本发明提供了一种基于模拟数据调用的测试方法、系统和电子设备。该方法包括:拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台;所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配;当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。本发明的方法减少了人工手动输入返回数据,便于测试人员对于复杂测试数据的模拟,提高了测试覆盖度和测试效率;减少了上游系统配合构造测试数据的时间成本,降低了项目进度风险和系统上线风险。

Description

基于模拟数据调用的测试方法、系统和电子设备
技术领域
本发明涉及测试技术领域,具体而言,涉及一种基于模拟数据调用的测试方法、系统和电子设备。
背景技术
在软件测试领域,Mock的意思是模拟,简单来说,就是通过某种技术手段模拟测试对象的行为,返回预先设计的结果。具体地,Mock系统维护有多条Mock规则,以通过Mock规则确定测试请求所需的响应结果。Mock规则是指:定义测试请求及相应的响应结果的一份描述,其中,如何确定测试请求所需要的响应结果,通常采用业务参数来进行控制。
然而,由于一部分测试部门负责测试的业务系统属于下游系统,对于上游系统的业务数据依赖强,特别是在上游业务系统以DUBBO接口的形式提供业务数据的情况下,存在测试过程中测试数据的配合提供存在一定障碍,导致有时项目的测试进度及整体计划受影响。此外,还存在成本较高、测试效率较低等问题。
因此,有必要提供一种测试效率更高的测试方法。
发明内容
为了减少上游系统配合构造测试数据的时间成本,提高测试效率,尽早发现问题,降低项目进度风险,本发明提供了一种基于模拟数据调用的测试方法,用于对需要进行测试的下游测试系统进行测试,所述需要进行测试的下游测试系统的运行依赖于线上运行的上游系统提供的方法和数据,包括:拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台;所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配;当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
优选地,所述根据匹配规则进行比对匹配包括:将所述请求标识信息中的接口名称、方法名称与预设模拟接口列表中接口名称、方法名称是否相同;在方法名称相同的情况下,判断输入参数与模拟参数是否相同;在输入参数与模拟参数相同的情况下,查询与该模拟参数相对应的模拟数据的模拟状态是否开启。
优选地,还包括:设定匹配规则,所述匹配规则包括:在多个比对内容中一个比对内容的比对结果为否的情况下,判断为匹配未成功;在匹配未成功的情况下,从上游系统调用相应数据或方法,并向所述下游测试系统返回所述相应数据或方法。
优选地,还包括:在多个比对内容中所有比对内容的比对结果都为是的情况下,判断为匹配成功;在匹配成功的情况下,将来自所述模拟中心平台的模拟数据转发给所述下游测试系统。
优选地,还包括:在所述模拟中心平台上配置与各请求标识信息相对应的模拟参数、模拟内容和预设模版,所述预设模版用作模拟数据操作的参照模版,所述请求标识信息包括接口名称、方法名称、输入参数。
优选地,还包括:将每个接口及对应从上游系统返回的返回值记录到所述模拟中心平台,并实时监测和查询与各接口相对应的输入参数、返回值;基于实时监测结果,将预设模版更新成正式模版。
优选地,所述将预设模版更新成正式模版包括:动态调整与各接口相对应的模拟参数,以修正模拟返回值或调整模拟方法。
优选地,还包括:在DUBBO接口的请求数量大于特定数量的情况下,拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台。
此外,本发明还提供了一种基于模拟数据调用的测试系统,用于对需要进行测试的下游测试系统进行测试,所述需要进行测试的下游测试系统的运行依赖于线上运行的上游系统提供的方法和数据,包括:拦截转发模块,其用于拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台;比对匹配模块,所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配;发送模块,当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
优选地,所述比对匹配模块还包括:将所述请求标识信息中的接口名称、方法名称与预设模拟接口列表中接口名称、方法名称是否相同;在方法名称相同的情况下,判断输入参数与模拟参数是否相同;在输入参数与模拟参数相同的情况下,查询与该模拟参数相对应的模拟数据的模拟状态是否开启。
优选地,还包括设定模块,所述设定模块用于设定匹配规则,所述匹配规则包括:在多个比对内容中一个比对内容的比对结果为否的情况下,判断为匹配未成功;在匹配未成功的情况下,从上游系统调用相应数据或方法,并向所述下游测试系统返回所述相应数据或方法。
优选地,还包括:在多个比对内容中所有比对内容的比对结果都为是的情况下,判断为匹配成功;在匹配成功的情况下,将来自所述模拟中心平台的模拟数据转发给所述下游测试系统。
优选地,还包括:在所述模拟中心平台上配置与各请求标识信息相对应的模拟参数、模拟内容和预设模版,所述预设模版用作模拟数据操作的参照模版,所述请求标识信息包括接口名称、方法名称、输入参数。
优选地,还包括:将每个接口及对应从上游系统返回的返回值记录到所述模拟中心平台,并实时监测和查询与各接口相对应的输入参数、返回值;基于实时监测结果,将预设模版更新成正式模版。
优选地,还包括更新模块,所述更新模块用于动态调整与各接口相对应的模拟参数,以修正模拟返回值或调整模拟方法。
优选地,还包括:在DUBBO接口的请求数量大于特定数量的情况下,拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台。
此外,本发明还提供了一种电子设备,其中,该电子设备包括:处理器;以及,存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行本发明所述的基于模拟数据调用的测试方法。
此外,本发明还提供了一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现本发明所述的基于模拟数据调用的测试方法。
有益效果
与现有技术相比,本发明的测试方法通过增设拦截插件,能够实时监测下游测试系统向上游系统发送的DUBBO请求,并能够拦截所述DUBBO请求,以有效配合对上游系统的数据调用,保证以正常速度向需要测试的下游测试系统提供相应数据;实现了实时监测上游系统与下游测试系统之间的交互数据、数据请求,提高了多系统之间的协作能力,还提高了模拟数据的调用效率;建立用于测试调用的正式模版,在后续再对同一接口进行测试时,可以直接使用正式模版的输入参数、模拟参数、返回值、方法,从而减少了人工手动输入返回数据,便于测试人员对于复杂测试数据的模拟,提高了测试覆盖度和测试效率;减少了上游系统配合构造测试数据的时间成本,降低了项目进度风险和系统上线风险。
附图说明
为了使本发明所解决的技术问题、采用的技术手段及取得的技术效果更加清楚,下面将参照附图详细描述本发明的具体实施例。但需声明的是,下面描述的附图仅仅是本发明本发明示例性实施例的附图,对于本领域的技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他实施例的附图。
图1是本发明的实施例1的基于模拟数据调用的测试方法的一示例的流程图。
图2是本发明的实施例1的基于模拟数据调用的测试方法的应用场景的一示例的示意图。
图3是本发明的实施例1的基于模拟数据调用的测试方法的另一示例的流程图。
图4是本发明的实施例1的基于模拟数据调用的测试方法的又一示例的流程图。
图5是本发明的实施例2的基于模拟数据调用的测试系统的一示例的示意图。
图6是本发明的实施例2的基于模拟数据调用的测试系统的另一示例的示意图。
图7是本发明的实施例2的基于模拟数据调用的测试系统的又一示例的示意图。
图8是根据本发明的一种电子设备的示例性实施例的结构框图。
图9是根据本发明的计算机可读介质的示例性实施例的结构框图。
具体实施方式
现在将参考附图更全面地描述本发明的示例性实施例。然而,示例性实施例能够以多种形式实施,且不应被理解为本发明仅限于在此阐述的实施例。相反,提供这些示例性实施例能够使得本发明更加全面和完整,更加便于将发明构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的元件、组件或部分,因而将省略对它们的重复描述。
在符合本发明的技术构思的前提下,在某个特定的实施例中描述的特征、结构、特性或其他细节不排除可以以合适的方式结合在一个或更多其他的实施例中。
在对于具体实施例的描述中,本发明描述的特征、结构、特性或其他细节是为了使本领域的技术人员对实施例进行充分理解。但是,并不排除本领域技术人员可以实践本发明的技术方案而没有特定特征、结构、特性或其他细节的一个或更多。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
应理解,虽然本文中可能使用第一、第二、第三等表示编号的定语来描述各种器件、元件、组件或部分,但这不应受这些定语限制。这些定语乃是用以区分一者与另一者。例如,第一器件亦可称为第二器件而不偏离本发明实质的技术方案。
术语“和/或”或者“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
鉴于上述问题,本发明提供了一种基于模拟数据调用的测试方法,用于对需要进行测试的下游测试系统进行测试,其中,所述下游测试系统的运行依赖于线上运行的上游系统提供的方法和数据。该方法能够有效配合对上游系统的数据调用,保证以正常速度向需要测试的下游测试系统提供相应数据;实现了实时监测上游系统与下游测试系统之间的交互数据、数据请求,提高了多系统之间的协作能力,还提高了模拟数据的调用效率;提高了测试覆盖度和测试效率;减少了上游系统配合构造测试数据的时间成本,降低了项目进度风险和系统上线风险。以下将结合实施例对本发明的测试方法进行具体说明。
实施例1
下面,将参照图1至图4描述本发明的基于模拟数据调用的测试方法的实施例。
图1为本发明的基于模拟数据调用的测试方法的流程图。如图1所示,一种基于模拟数据调用的测试方法,该方法包括如下步骤。
步骤S101,拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台。
步骤S102,所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配。
步骤S103,当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
图2是本发明的基于模拟数据调用的测试方法的应用场景的一示例的示意图。
如图2所示,在该应用场景中,包括上游系统、下游系统、拦截插件、模拟中心平台(在本示例中,包括查看模块和配置模块)等,在需要进行测试的下游测试系统发送DUBBO请求时,拦截插件将所述DUBBO请求拦截,并将所述DUBBO请求转发给模拟中心平台,再根据所述DUBBO请求所包含的请求标识信息,进行判断,最后将来自模拟中心平台或上游系统的相应数据返回给所述下游测试系统,以实现更高效的调用数据以进行测试。以下将具体说明本发明的测试方法。
首先,在步骤S101中,拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台。
在本示例中,拦截插件对下游测试系统发送的请求进行实时监测,在下游测试系统向上游系统发送DUBBO请求时,例如,下游应用系统a请求DUBBO接口1时,拦截插件拦截该DUBBO请求,并取得该DUBBO请求所包含的请求标识信息。
具体地,所述请求标识信息包括接口名称、方法名称、输入参数等。
如图3所示,还包括判断DUBBO接口的请求数量是否大于特定数量的步骤S301。
在步骤S301中,判断DUBBO接口的请求数量是否大于特定数量。
在本示例中,根据上游系统的数据可调用能力,设定与该数据可调用能力相对应的特定数量。
需要说明的是,在本发明中,上游系统的数据可调用能力是指在下游测试系统请求同一接口的调用数量小于等于特定数量时,以正常速度向下游测试系统提供相应调用数据的能力。
具体地,在DUBBO接口的请求数量大于特定数量的情况下,拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台。
进一步地,在DUBBO接口的请求数量在小于等于特定数量的情况下,不启用拦截插件,即不拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,而是直接调用上游系统的相应数据。,
因此,通过增设拦截插件,能够实时监测下游测试系统向上游系统发送的DUBBO请求,并能够拦截所述DUBBO请求,以有效配合对上游系统的数据调用,保证以正常速度向需要测试的下游测试系统提供相应数据。
需要说明的是,上述仅作为优选的示例进行说明,不能理解成对本发明的限制。
接下来,在步骤S102中,所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配。
在本示例中,在所述模拟中心平台上配置与各请求标识信息相对应的模拟参数、模拟内容和预设模版,所述预设模版用作模拟数据操作的参照模版。由此,能够配置或调整参数、内容或模版,并实现了可编辑功能,从而优化了系统功能。
优选地,每个接口可以点击查看与各接口相对应的模板。例如查看预设模版、正式模板及每次正常调用上游系统拦截到的实时的输入参数和返回值等。由此,提供了查看功能,
具体地,在模拟中心平台接收到由拦截插件转发的DUBBO请求时,根据匹配规则进行比对匹配。
进一步地,包括多个比对内容,其中,所述比对内容包括:将所述请求标识信息中的接口名称、方法名称与预设模拟接口列表中接口名称、方法名称是否相同;在方法名称相同的情况下,判断输入参数与模拟参数是否相同;在输入参数与模拟参数相同的情况下,查询与该模拟参数相对应的模拟数据的模拟状态是否开启。
如图4所示,还包括设定匹配规则的步骤S401。
在步骤S401中,设定匹配规则。
具体地,所述匹配规则包括:在多个比对内容中一个比对内容的比对结果为否的情况下,判断为匹配未成功;在多个比对内容中所有比对内容的比对结果都为是的情况下,判断为匹配成功。
一方面,在匹配未成功的情况下,从上游系统调用相应数据或方法,并向所述下游测试系统返回所述相应数据或方法。
另一方面,在匹配成功的情况下,将来自所述模拟中心平台的模拟数据转发给所述下游测试系统。
需要说明的是,在其他示例中,还可以增加或减少比对内容,或者调整或者更换匹配条件。例如,在多个比对内容中一个比对内容(或者特定比对内容)的比对结果为是的情况下,或者,在多个比对内容中两个比对内容(或者特定比对内容)的比对结果为是的情况下,判断为匹配成功。具体的设定可以根据实际需要进行调整或重新设定。上述仅作为示例进行说明,不能理解成对本发明的限制。
接下来,在步骤S103,当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
具体地,将所述DUBBO请求所包含的请求信息与模拟中心平台的预定匹配规则进行比对匹配,当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据。
例如,将预设模版中相匹配的模拟数据或方法,发送给拦截插件,拦截插件将所述模拟数据或方法发送给下游测试系统,并向下游测试系统返回模拟数据发送成功的消息。
需要说明的是,在发明中,所述拦截插件主要基于DUBBO的过滤器(filter)接口做过滤拦截,然后调用模拟中心平台将模拟参数(动态的模拟参数)返回给对应下游测试系统,并实时拦截上游系统的返回数据或内容(例如,返回值、方法等),再记录到对应接口的模版。由此,实现了实时监测上游系统与下游测试系统之间的交互数据、数据请求,提高了多系统之间的协作能力,还提高了模拟数据的调用效率。
优选地,将每个接口及对应从上游系统返回的返回值,自动记录到所述模拟中心平台的相应模版,以用于用户实时查询。例如,在模拟中心平台的查询模块,用户可实时查询与输入信息相对应的预设模版。再例如,还可以通过接口名称、方法名称查询正常调用上游系统返回的记录信息,以实现实时查看监控请求的输入参数和返回值等。
进一步地,实时监测和查询与各接口相对应的输入参数、返回值。例如将实时拦截的接口返回值或方法等返回数据。
更进一步地,基于实时监测结果,将预设模版更新成正式模版。由此,建立用于测试调用的正式模版,在后续再对同一接口进行测试时,可以直接使用正式模版的输入参数、模拟参数、返回值、方法,从而减少了人工手动输入返回数据,便于测试人员对于复杂测试数据的模拟,提高了测试覆盖度和测试效率,降低了系统上线风险。
在另一示例中,所述将预设模版更新成正式模版包括:动态调整与各接口相对应的模拟参数,以修正模拟返回值或调整模拟方法。
需要说明的是,上述仅作为优选示例进行说明,不能理解成对本发明的限制。
本领域技术人员可以理解,实现上述实施例的全部或部分步骤被实现为由计算机数据处理设备执行的程序(计算机程序)。在该计算机程序被执行时,可以实现本发明提供的上述方法。而且,所述的计算机程序可以存储于计算机可读存储介质中,该存储介质可以是磁盘、光盘、ROM、RAM等可读存储介质,也可以是多个存储介质组成的存储阵列,例如磁盘或磁带存储阵列。所述的存储介质不限于集中式存储,其也可以是分布式存储,例如基于云计算的云存储。
与现有技术相比,本发明的测试方法通过增设拦截插件,能够实时监测下游测试系统向上游系统发送的DUBBO请求,并能够拦截所述DUBBO请求,以有效配合对上游系统的数据调用,保证以正常速度向需要测试的下游测试系统提供相应数据;实现了实时监测上游系统与下游测试系统之间的交互数据、数据请求,提高了多系统之间的协作能力,还提高了模拟数据的调用效率;建立用于测试调用的正式模版,在后续再对同一接口进行测试时,可以直接使用正式模版的输入参数、模拟参数、返回值、方法,从而减少了人工手动输入返回数据,便于测试人员对于复杂测试数据的模拟,提高了测试覆盖度和测试效率;减少了上游系统配合构造测试数据的时间成本,降低了项目进度风险和系统上线风险。
实施例2
下面描述本发明的系统实施例,该装置可以用于执行本发明的方法实施例。对于本发明系统实施例中描述的细节,应视为对于上述方法实施例的补充;对于在本发明系统实施例中未披露的细节,可以参照上述方法实施例来实现。
参照图5、图6和图7,本发明还提供了一种基于模拟数据调用的测试系统500,用于对需要进行测试的下游测试系统进行测试,所述需要进行测试的下游测试系统的运行依赖于线上运行的上游系统提供的方法和数据,所述测试系统500包括:拦截转发模块501,其用于拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台;比对匹配模块502,所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配;发送模块503,当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
优选地,所述比对匹配模块502还包括:将所述请求标识信息中的接口名称、方法名称与预设模拟接口列表中接口名称、方法名称是否相同;在方法名称相同的情况下,判断输入参数与模拟参数是否相同;在输入参数与模拟参数相同的情况下,查询与该模拟参数相对应的模拟数据的模拟状态是否开启。
如图6所示,还包括设定模块601,所述设定模块601用于设定匹配规则,所述匹配规则包括:在多个比对内容中一个比对内容的比对结果为否的情况下,判断为匹配未成功;在匹配未成功的情况下,从上游系统调用相应数据或方法,并向所述下游测试系统返回所述相应数据或方法。
优选地,还包括:在多个比对内容中所有比对内容的比对结果都为是的情况下,判断为匹配成功;在匹配成功的情况下,将来自所述模拟中心平台的模拟数据转发给所述下游测试系统。
优选地,还包括:在所述模拟中心平台上配置与各请求标识信息相对应的模拟参数、模拟内容和预设模版,所述预设模版用作模拟数据操作的参照模版,所述请求标识信息包括接口名称、方法名称、输入参数。
优选地,还包括:将每个接口及对应从上游系统返回的返回值记录到所述模拟中心平台,并实时监测和查询与各接口相对应的输入参数、返回值;基于实时监测结果,将预设模版更新成正式模版。
如图7所示,还包括更新模块701,所述更新模块701用于动态调整与各接口相对应的模拟参数,以修正模拟返回值或调整模拟方法。
优选地,还包括:在DUBBO接口的请求数量大于特定数量的情况下,拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台。
需要说明的是,在实施例2中,省略了与实施例1相同的部分的说明。
本领域技术人员可以理解,上述系统实施例中的各模块可以按照描述分布于系统中,也可以进行相应变化,分布于不同于上述实施例的一个或多个系统中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
与现有技术相比,本发明的测试装置通过增设拦截插件,能够实时监测下游测试系统向上游系统发送的DUBBO请求,并能够拦截所述DUBBO请求,以有效配合对上游系统的数据调用,保证以正常速度向需要测试的下游测试系统提供相应数据;实现了实时监测上游系统与下游测试系统之间的交互数据、数据请求,提高了多系统之间的协作能力,还提高了模拟数据的调用效率;建立用于测试调用的正式模版,在后续再对同一接口进行测试时,可以直接使用正式模版的输入参数、模拟参数、返回值、方法,从而减少了人工手动输入返回数据,便于测试人员对于复杂测试数据的模拟,提高了测试覆盖度和测试效率;减少了上游系统配合构造测试数据的时间成本,降低了项目进度风险和系统上线风险。
实施例3
下面描述本发明的电子设备实施例,该电子设备可以视为对于上述本发明的方法和系统实施例的具体实体实施方式。对于本发明电子设备实施例中描述的细节,应视为对于上述方法或系统实施例的补充;对于在本发明电子设备实施例中未披露的细节,可以参照上述方法或系统实施例来实现。
图8是根据本发明的一种电子设备的示例性实施例的结构框图。下面参照图8来描述根据本发明该实施例的的电子设备200。图8显示的电子设备200仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元210执行,使得所述处理单元210执行本说明书上述电子设备的处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元210可以执行如图1所示的步骤。
所述存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。
所述存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,本发明描述的示例性实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读的存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明的上述方法。当所述计算机程序被一个数据处理设备执行时,使得该计算机可读介质能够实现本发明的上述方法。
如图9所示,所述计算机程序可以存储于一个或多个计算机可读介质上。计算机可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,本发明可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)等通用数据处理设备来实现根据本发明实施例中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,本发明不与任何特定计算机、虚拟系统或者电子设备固有相关,各种通用系统也可以实现本发明。以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于模拟数据调用的测试方法,用于对需要进行测试的下游测试系统进行测试,所述需要进行测试的下游测试系统的运行依赖于线上运行的上游系统提供的方法和数据,其特征在于,包括:
判断DUBBO接口的请求数量是否大于特定数量,在DUBBO接口的请求数量大于特定数量的情况下,拦截插件实时监测下游测试系统向上游系统发送的DUBBO请求,并拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台;
所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配;
当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
2.根据权利要求1所述的测试方法,其特征在于,
所述根据匹配规则进行比对匹配包括:将请求标识信息中的接口名称、方法名称与预设模拟接口列表中接口名称、方法名称是否相同;在方法名称相同的情况下,判断输入参数与模拟参数是否相同;在输入参数与模拟参数相同的情况下,查询与该模拟参数相对应的模拟数据的模拟状态是否开启。
3.根据权利要求1或2所述的测试方法,其特征在于,还包括:
设定匹配规则,所述匹配规则包括:
在多个比对内容中一个比对内容的比对结果为否的情况下,判断为匹配未成功;
在匹配未成功的情况下,从上游系统调用相应数据或方法,并向所述下游测试系统返回所述相应数据或方法。
4.根据权利要求3所述的测试方法,其特征在于,还包括:
在多个比对内容中所有比对内容的比对结果都为是的情况下,判断为匹配成功;
在匹配成功的情况下,将来自所述模拟中心平台的模拟数据转发给所述下游测试系统。
5.根据权利要求1或4所述的测试方法,其特征在于,还包括:
在所述模拟中心平台上配置与各请求标识信息相对应的模拟参数、模拟内容和预设模版,所述预设模版用作模拟数据操作的参照模版,所述请求标识信息包括接口名称、方法名称、输入参数。
6.根据权利要求5所述的测试方法,其特征在于,还包括:
将每个接口及对应从上游系统返回的返回值记录到所述模拟中心平台,并实时监测和查询与各接口相对应的输入参数、返回值;
基于实时监测结果,将预设模版更新成正式模版。
7.根据权利要求6所述的测试方法,其特征在于,所述将预设模版更新成正式模版包括:
动态调整与各接口相对应的模拟参数,以修正模拟返回值或调整模拟方法。
8.一种基于模拟数据调用的测试系统,用于对需要进行测试的下游测试系统进行测试,所述需要进行测试的下游测试系统的运行依赖于线上运行的上游系统提供的方法和数据,其特征在于,包括:
拦截转发模块,其用于判断DUBBO接口的请求数量是否大于特定数量,在DUBBO接口的请求数量大于特定数量的情况下,拦截插件实时监测下游测试系统向上游系统发送的DUBBO请求,并拦截由所述下游测试系统发送给上游系统DUBBO接口的DUBBO请求,并将所述DUBBO请求转发给模拟中心平台;
比对匹配模块,所述模拟中心平台接收所述DUBBO请求,并根据匹配规则进行比对匹配;
发送模块,当所述DUBBO请求与所述模拟中心平台的预定匹配规则匹配成功时,由该模拟中心平台提供模拟数据,并向所述下游测试系统返回模拟数据发送成功的消息。
9.一种电子设备,其中,该电子设备包括:
处理器;以及,
存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据权利要求1-7中任一项所述的基于模拟数据调用的测试方法。
10.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现权利要求1-7中任一项所述的基于模拟数据调用的测试方法。
CN202011200582.XA 2020-11-02 2020-11-02 基于模拟数据调用的测试方法、系统和电子设备 Active CN112100079B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011200582.XA CN112100079B (zh) 2020-11-02 2020-11-02 基于模拟数据调用的测试方法、系统和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011200582.XA CN112100079B (zh) 2020-11-02 2020-11-02 基于模拟数据调用的测试方法、系统和电子设备

Publications (2)

Publication Number Publication Date
CN112100079A true CN112100079A (zh) 2020-12-18
CN112100079B CN112100079B (zh) 2022-04-12

Family

ID=73784536

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011200582.XA Active CN112100079B (zh) 2020-11-02 2020-11-02 基于模拟数据调用的测试方法、系统和电子设备

Country Status (1)

Country Link
CN (1) CN112100079B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112527420A (zh) * 2020-12-23 2021-03-19 平安普惠企业管理有限公司 接口数据流转处理方法、装置、计算机设备及介质
CN113328913A (zh) * 2021-05-31 2021-08-31 长沙市到家悠享家政服务有限公司 一种提高项目测试效率的方法、装置和系统
CN113642149A (zh) * 2021-07-02 2021-11-12 上海创景信息科技有限公司 通用可配置的数据模拟与转发的实现方法及系统
WO2022134895A1 (zh) * 2020-12-25 2022-06-30 华为云计算技术有限公司 一种模拟响应方法以及相关设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138448A (zh) * 2014-06-05 2015-12-09 北京畅游天下网络技术有限公司 一种在前端测试页面的方法和装置
CN107179984A (zh) * 2016-03-10 2017-09-19 北京京东尚科信息技术有限公司 一种接口mock方法及接口测试方法
US20180060220A1 (en) * 2016-08-23 2018-03-01 Linkedin Corporation Fixture plugin for product automation
CN109359149A (zh) * 2018-10-08 2019-02-19 网宿科技股份有限公司 一种模拟测试方法及相关装置
CN109522218A (zh) * 2018-10-19 2019-03-26 平安科技(深圳)有限公司 接口测试方法、装置、计算机设备和存储介质
CN109634837A (zh) * 2018-10-23 2019-04-16 平安科技(深圳)有限公司 自动化测试方法、装置、设备及存储介质
CN109634836A (zh) * 2018-10-23 2019-04-16 平安科技(深圳)有限公司 测试数据封装方法、装置、设备及存储介质
CN109656807A (zh) * 2018-11-01 2019-04-19 平安科技(深圳)有限公司 基于信息安全的接口mock测试方法、装置、设备及存储介质
CN110032454A (zh) * 2018-01-12 2019-07-19 北京京东尚科信息技术有限公司 远程调用方法、系统和相关设备及计算机可读存储介质
CN110309058A (zh) * 2019-05-24 2019-10-08 平安银行股份有限公司 业务端测试方法、装置、计算机装置及计算机存储介质
CN110727588A (zh) * 2019-09-29 2020-01-24 浙江大搜车软件技术有限公司 网络应用的测试方法、系统、计算机设备和可读存储介质
CN111858083A (zh) * 2019-12-30 2020-10-30 北京嘀嘀无限科技发展有限公司 一种远程服务的调用方法、装置、电子设备及存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138448A (zh) * 2014-06-05 2015-12-09 北京畅游天下网络技术有限公司 一种在前端测试页面的方法和装置
CN107179984A (zh) * 2016-03-10 2017-09-19 北京京东尚科信息技术有限公司 一种接口mock方法及接口测试方法
US20180060220A1 (en) * 2016-08-23 2018-03-01 Linkedin Corporation Fixture plugin for product automation
CN110032454A (zh) * 2018-01-12 2019-07-19 北京京东尚科信息技术有限公司 远程调用方法、系统和相关设备及计算机可读存储介质
CN109359149A (zh) * 2018-10-08 2019-02-19 网宿科技股份有限公司 一种模拟测试方法及相关装置
CN109522218A (zh) * 2018-10-19 2019-03-26 平安科技(深圳)有限公司 接口测试方法、装置、计算机设备和存储介质
CN109634837A (zh) * 2018-10-23 2019-04-16 平安科技(深圳)有限公司 自动化测试方法、装置、设备及存储介质
CN109634836A (zh) * 2018-10-23 2019-04-16 平安科技(深圳)有限公司 测试数据封装方法、装置、设备及存储介质
CN109656807A (zh) * 2018-11-01 2019-04-19 平安科技(深圳)有限公司 基于信息安全的接口mock测试方法、装置、设备及存储介质
CN110309058A (zh) * 2019-05-24 2019-10-08 平安银行股份有限公司 业务端测试方法、装置、计算机装置及计算机存储介质
CN110727588A (zh) * 2019-09-29 2020-01-24 浙江大搜车软件技术有限公司 网络应用的测试方法、系统、计算机设备和可读存储介质
CN111858083A (zh) * 2019-12-30 2020-10-30 北京嘀嘀无限科技发展有限公司 一种远程服务的调用方法、装置、电子设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112527420A (zh) * 2020-12-23 2021-03-19 平安普惠企业管理有限公司 接口数据流转处理方法、装置、计算机设备及介质
WO2022134895A1 (zh) * 2020-12-25 2022-06-30 华为云计算技术有限公司 一种模拟响应方法以及相关设备
CN113328913A (zh) * 2021-05-31 2021-08-31 长沙市到家悠享家政服务有限公司 一种提高项目测试效率的方法、装置和系统
CN113642149A (zh) * 2021-07-02 2021-11-12 上海创景信息科技有限公司 通用可配置的数据模拟与转发的实现方法及系统

Also Published As

Publication number Publication date
CN112100079B (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
CN112100079B (zh) 基于模拟数据调用的测试方法、系统和电子设备
CN108170612B (zh) 一种自动化测试方法、装置及服务器
CN111177617A (zh) 基于运维管理系统的web直接运维方法、装置及电子设备
CN111245642A (zh) 一种获取多系统之间的依赖关系的方法、装置和电子设备
CN110806970A (zh) 一种基于模拟服务端响应的客户端测试方法、装置和电子设备
CN108111364B (zh) 一种业务系统的测试方法及装置
CN110858172A (zh) 一种自动化测试代码生成方法和装置
CN111580855B (zh) 一种基于全流程灰度发布的策略发布方法、系统和电子设备
CN112015402A (zh) 业务场景快速建立方法、装置和电子设备
CN112363938A (zh) 数据处理方法、装置、电子设备和存储介质
CN110677307B (zh) 一种服务监测方法、装置、设备和存储介质
CN111949970A (zh) 一种目标资源数据获取的方法、装置和电子设备
CN111309621A (zh) 接口测试方法、系统、设备及存储介质
CN111612504A (zh) 一种用于任务完成用户的信息发送方法、装置和电子设备
CN110852050A (zh) 一种配置报表生成系统的方法、装置和电子设备
CN110609786A (zh) 软件测试方法、装置、计算机设备和存储介质
CN110705637A (zh) 一种基于应用安装列表信息的用户分类的方法、装置和电子设备
CN108415849A (zh) 用于测试应用的方法和装置
CN114640614A (zh) Rpc接口自动化测试方法、系统、电子设备、介质及产品
CN113191844A (zh) 基于匿名用户在线操作的产品推荐方法、装置和电子设备
CN109660669B (zh) 用户操作信息的采集方法、系统、设备及存储介质
CN112965910A (zh) 自动化回归测试方法、装置、电子设备、存储介质
CN113127284A (zh) 服务器压力测试方法、系统、电子设备及存储介质
CN113806327A (zh) 一种数据库设计方法、装置及相关设备
CN111159988A (zh) 一种模型处理方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant