CN116483732A - 一种基于多数据源的测试方法、装置及设备 - Google Patents

一种基于多数据源的测试方法、装置及设备 Download PDF

Info

Publication number
CN116483732A
CN116483732A CN202310627476.7A CN202310627476A CN116483732A CN 116483732 A CN116483732 A CN 116483732A CN 202310627476 A CN202310627476 A CN 202310627476A CN 116483732 A CN116483732 A CN 116483732A
Authority
CN
China
Prior art keywords
data
result
data source
execution
target
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.)
Pending
Application number
CN202310627476.7A
Other languages
English (en)
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.)
China Construction Bank Corp
CCB Finetech Co Ltd
Original Assignee
China Construction Bank Corp
CCB Finetech 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 China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN202310627476.7A priority Critical patent/CN116483732A/zh
Publication of CN116483732A publication Critical patent/CN116483732A/zh
Pending legal-status Critical Current

Links

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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明实施例涉及测试技术领域,公开了一种基于多数据源的测试方法、装置及设备,通过同时将目标操作数据分发到所有数据源进行操作,并将所有操作结果与标杆结果进行对比,以确定是否存在操作异常的数据源,解决了现有技术中对于切换数据源时改造的语法进行正确性和执行效率测试时,需要部署多个数据源不同的服务系统,且需要在多个系统执行相同的业务测试所导致的测试工作繁多且测试时间较长的技术问题,实现了快速简单的对数据源切换时改造的语法进行测试的技术效果,简化了测试过程,提高了测试效率。

Description

一种基于多数据源的测试方法、装置及设备
技术领域
本发明实施例涉及测试技术领域,尤其涉及一种基于多数据源的测试方法、装置及设备。
背景技术
当某个涉及数据存储的成熟软件或者系统需要对外进行输出或者交付时,由于不同的输入方可能会有不同的数据源要求,在进行数据源切换时由于不同数据源之间的语法存在差异,需要为这些存在的差异进行语法改造,以满足数据源切换的要求,在经过这些改造后如何保证改造后逻辑上的正确性和执行效率是个重要的问题。
传统的做法可能是部署多个数据源不同的服务系统,在改造后多个系统之间进行大量的业务测试来保证结果正确性,而性能对比可能需要在多个系统执行相同的业务测试来实现,测试工作繁多且测试时间较长。
发明内容
本发明实施例提供一种基于多数据源的测试方法、装置及设备,解决了现有技术中对于切换数据源时改造的语法进行正确性和执行效率测试时,需要部署多个数据源不同的服务系统,且需要在多个系统执行相同的业务测试所导致的测试工作繁多且测试时间较长的技术问题。
第一方面,本申请提供了一种基于多数据源的测试方法,所述测试方法包括:
获取目标操作数据;
将所述目标操作数据同时分发到所有数据源,其中,所述数据源的数量为至少两个;
获取所有所述数据源执行所述目标操作数据的操作结果,其中,所述操作结果包括执行所述目标操作数据的执行结果以及执行时长;
将所述操作结果与标杆结果进行对比,确定是否存在操作异常的所述数据源,其中,所述标杆结果为多个所述操作结果中的一个,所述标杆结果依据历史数据操作准确度确定得到。
第二方面,本申请提供了一种基于多数据源的测试装置,所述测试装置包括:
数据服务请求拦截单元,用于获取目标操作数据;
所述数据服务请求拦截单元还用于将所述目标操作数据同时分发到所有数据源,其中,所述数据源的数量为至少两个;
结果分析单元,用于获取所有所述数据源执行所述目标操作数据的操作结果,其中,所述操作结果包括执行所述目标操作数据的执行结果以及执行时长;
所述结果分析单元还用于将所述操作结果与标杆结果进行对比,确定是否存在操作异常的所述数据源,其中,所述标杆结果为多个所述操作结果中的一个,所述标杆结果依据历史数据操作准确度确定得到。
第三方面,本申请提供了一种基于多数据源的测试设备,所述基于多数据源的测试设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请第一方面所述的基于多数据源的测试方法。
第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本申请第一方面所述的基于多数据源的测试方法。
第五方面,本申请提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序在被处理器执行时实现本申请第一方面所述的基于多数据源的测试方法。
本发明实施例公开了一种基于多数据源的测试方法、装置及设备,测试方法包括获取目标操作数据;将目标操作数据同时分发到所有数据源;获取所有数据源执行目标操作数据的操作结果;将操作结果与标杆结果进行对比,确定是否存在操作异常的数据源。本申请通过同时将目标操作数据分发到所有数据源进行操作,并将所有操作结果与标杆结果进行对比,以确定是否存在操作异常的数据源,解决了现有技术中对于切换数据源时改造的语法进行正确性和执行效率测试时,需要部署多个数据源不同的服务系统,且需要在多个系统执行相同的业务测试所导致的测试工作繁多且测试时间较长的技术问题,实现了快速简单的对数据源切换时改造的语法进行测试的技术效果,简化了测试过程,提高了测试效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于多数据源的测试方法的流程图;
图2是本发明实施例提供的另一种基于多数据源的测试方法的流程图;
图3是本发明实施例提供的又一种基于多数据源的测试方法的流程图;
图4是本发明实施例提供的又一种基于多数据源的测试方法的流程图;
图5是本发明实施例提供的一种基于多数据源的测试装置的结构图;
图6是本发明实施例提供的一种基于多数据源的测试装置的工作流程图;
图7是本发明实施例提供的一种基于多数据源的测试设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“目标”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1是本发明实施例提供的一种基于多数据源的测试方法的流程图,本实施例可适用于具有多个数据源的软件或系统需要进行测试情况,该方法可以由基于多数据源的测试装置来执行,该基于多数据源的测试装置可以采用硬件和/或软件的形式实现,并一般可集成于服务器中。本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
如图1所示,该基于多数据源的测试方法具体包括如下步骤:
S101,获取目标操作数据。
具体地,目标操作数据通常为涉及数据查询、存储、更新或删除操作的数据。
S102,将目标操作数据同时分发到所有数据源,其中,数据源的数量为至少两个。
具体地,在获取到目标操作数据之后,测试装置会将目标操作数据同时发送至多个数据源中进行操作,不同数据源在执行相应操作时会记录下执行时间、执行计划以及最终的执行结果。在本发明实施例中,数据源的数量可以为多个,由于需要确定其中一个数据源的执行结果作为标杆结果,因此数据源的数量为至少两个。
S103,获取所有数据源执行目标操作数据的操作结果,其中,操作结果包括执行目标操作数据的执行结果以及执行时长。
S104,将操作结果与标杆结果进行对比,确定是否存在操作异常的数据源,其中,标杆结果为多个操作结果中的一个,标杆结果依据历史数据操作准确度确定得到。
具体地,在所有数据源执行完毕目标操作数据之后,测试装置会获取每个数据源的操作结果,并将其中一个操作结果作为标杆结果,来对其他操作结果进行对比参照,首先需要对比每个操作结果中的执行结果与标杆结果的执行结果是否一致,在保证结果一致的情况下,还需要对比执行时长与标杆结果的执行时长是否一致,若不一致,两者之间相差时间的是否过长,如果相差时间过长,则表明相应数据源存在操作异常。在得到测试结果之后,测试装置还能够通过显示屏向开发者或测试人员显示相应的测试结果。
需要说明的是,标杆结果通常依据历史数据操作准确度来选取,即选择通常结果最为可靠的数据源的结果作为标杆结果,例如,选择Oracle数据源的操作结果作为标杆结果。
本申请通过同时将目标操作数据分发到所有数据源进行操作,并将所有操作结果与标杆结果进行对比,以确定是否存在操作异常的数据源,解决了现有技术中对于切换数据源时改造的语法进行正确性和执行效率测试时,需要部署多个数据源不同的服务系统,且需要在多个系统执行相同的业务测试所导致的测试工作繁多且测试时间较长的技术问题,实现了快速简单的对数据源切换时改造的语法进行测试的技术效果,简化了测试过程,提高了测试效率。
在上述各技术方案的基础上,图2是本发明实施例提供的另一种基于多数据源的测试方法的流程图,如图2所示,在S101之前,该基于多数据源的测试方法还包括:
S201,实时监测服务器端是否接收到外部操作请求。
具体地,当测试装置被启动之后,会主动连接服务器端相应的数据源节点,并对其进行监控,以确定服务器端是否接收到外部操作请求。
S202,若是,则判断外部操作请求中是否包含数据的查询、存储、更新或删除。
具体地,当测试装置监控到服务器端接收到外部操作请求,并执行相应的外部操作请求时,测试装置首先会判断该外部操作请求中是否包含数据的查询、存储、更新或删除,即是否包含目标操作数据。
S203,若包含,则拦截服务器端基于外部操作请求执行的数据服务操作,并执行获取目标操作数据的动作。
具体地,若测试装置判断出外部操作请求中包含目标操作数据,则会拦截服务器端基于外部操作请求执行的数据服务操作,并获取相应的目标操作数据,以进行后续的测试步骤。
在上述各技术方案的基础上,图3是本发明实施例提供的又一种基于多数据源的测试方法的流程图,如图3所示,S102具体包括:
S301,根据当前数据源的数量启用相应数量的线程,其中,一个线程对应一个不同的数据源。
S302,将目标操作数据同时分发至每个线程。
具体地,为了减少测试时间,提高测试效率,测试装置在获取到相应的目标操作数据之后会启用多个线程,线程的数量与数据源的数量相同,使得一个线程能够对应一个不同的数据源,并将目标操作数据分发给每个线程,以使多个数据源能够同时对目标操作数据进行操作。
在上述各技术方案的基础上,如图3所示,S302之后,该基于多数据源的测试方法还包括:
S303,每个线程基于预设映射规则匹配出相应数据源执行目标操作数据所需要的执行方法。
S304,每个数据源利用匹配出的执行方法执行目标操作数据,得到相应的操作结果。
具体地,测试装置会基于预设映射规则为每个数据源匹配出相应的执行方法,以使每个数据源能够利用匹配出的执行方法执行目标操作数据,得到相应的操作结果。其中,预设映射规则为不同数据源处理数据的语法规则。
在上述各技术方案的基础上,图4是本发明实施例提供的又一种基于多数据源的测试方法的流程图,如图4所示,在S104具体包括:
S401,将操作结果中的执行结果与标杆结果中的执行结果进行对比,判断是否一致。
S402,若一致,则判断操作结果中的执行时长是否超过标杆结果中的执行结果中的执行时长预设百分比。
S403,若超过预设百分比,则相应数据源存在操作异常。
具体地,在选取出标杆结果之后,首先将剩余每个操作结果中的执行结果与标杆结果中的执行结果进行对比,判断是否一致,在保证结果一致的情况下,进一步对比每个操作结果中的执行时长是否超过标杆结果的执行时长预设百分比,该预设百分比可以根据需要进行设置,例如设置为50%;若某个数据源的操作结果中的执行时长超过标杆结果的执行时长预设百分比,则表明该数据源在进行语法改造时使用了过长的时间,存在操作异常。
在上述各技术方案的基础上,在S403确定出存在具有操作异常的数据源之后,该基于多数据源的测试方法还包括:提示相应数据源的操作存在异常情况。
具体地,当发现存在操作异常的数据源之后,通过告警的方式提示开发者或测试人员相应数据源的操作存在异常。
可选地,数据源为使用结构化查询语言的数据源。
具体地,数据源可以为使用SQL(Structured Query Language,结构化查询语言)的数据源,还可以根据需要测试使用其他语言进行操作的数据源,在此不再具体限制。
在本发明实施例中,使用本发明实施例提供的基于多数据源的测试方法进行测试具有下述优点:通过一体化的方式,不仅能够进行多数据源的注册、调度以及监控,还能够通过与业务逻辑的解耦屏蔽对业务层的影响,重点关注与数据调用在不同的数据源之间的差异,节省了部署系统资源和测试资源,实现了对不同数据源之间的调用的差异可视化和差异分析,帮助开发人员及时发现不同数据源间的处理效率,达到辅助SQL优化的目的。
图5是本发明实施例提供的一种基于多数据源的测试装置的结构图,如图5所示,该基于多数据源的测试装置包括:
数据服务请求拦截单元51,用于获取目标操作数据;
数据服务请求拦截单元51还用于将目标操作数据同时分发到所有数据源,其中,数据源的数量为至少两个;
结果分析单元52,用于获取所有数据源执行目标操作数据的操作结果,其中,操作结果包括执行目标操作数据的执行结果以及执行时长;
结果分析单元52还用于将操作结果与标杆结果进行对比,确定是否存在操作异常的数据源,其中,标杆结果为多个操作结果中的一个,标杆结果依据历史数据操作准确度确定得到。
可选地,如图5所示,在数据服务请求拦截单元51获取目标操作数据之前,测试装置还包括:
数据资源调度单元53,用于实时监测服务器端是否接收到外部操作请求;
若监测到服务器端接收到外部操作请求,则数据资源调度单元53还用于判断外部操作请求中是否包含数据的查询、存储、更新或删除;
若数据资源调度单元53的判断结果为包含,则数据服务请求拦截单元拦截服务器端基于外部操作请求执行的数据服务操作,并执行获取目标操作数据的动作。
可选地,数据服务请求拦截单元51具体用于:
根据当前数据源的数量启用相应数量的线程,其中,一个线程对应一个不同的数据源;
将目标操作数据同时分发至每个线程。
可选地,在数据服务请求拦截单元51将目标操作数据同时分发至每个线程之后,数据服务请求拦截单元51还用于:
每个线程基于预设映射规则匹配出相应数据源执行目标操作数据所需要的执行方法;
每个数据源利用匹配出的执行方法执行目标操作数据,得到相应的操作结果。
可选地,结果分析单元52具体用于:
将操作结果中的执行结果与标杆结果中的执行结果进行对比,判断是否一致;
若一致,则判断操作结果中的执行时长是否超过标杆结果中的执行结果中的执行时长预设百分比;
若超过预设百分比,则相应数据源存在操作异常。
可选地,在结果分析单元52确定出存在具有操作异常的数据源之后,测试装置还包括:
告警单元,用于提示相应数据源的操作存在异常情况。
下面以一个具体的实施例来对本发明实施例提供的基于多数据源的测试装置的工作过程进行说明。图6是本发明实施例提供的一种基于多数据源的测试装置的工作流程图。
如图6所示,以具有三个数据源A、B、C为例,当测试装置启动后,数据资源调度单元53会主动连接配置中的数据源节点并且对其进行监控;当外部操作请求进入服务器端后,服务器端会正常处理原有的业务逻辑,当该外部操作请求涉及到了数据的查询、存储、更新或者删除操作时,该操作会被数据服务请求拦截单元51所拦截,接着数据服务请求拦截单元51会根据预设映射规则针对不同数据源匹配出该目标操作数据进行操作所需要在各个数据源中执行的SQL,然后启用多个线程并行地在对应的数据源中执行对应的SQL,各线程会记录SQL的执行时长,然后将不同SQL的执行结果汇总给结果分析单元52;结果分析单元52会进行结果汇总,并且选取出标杆结果做为参照,使用其他数据源的操作结果与标杆结果进行比对,最后将统计分析输出给看板(即上述显示屏),如果出现执行结果不一致或者SQL的执行效率差异过大等异常情况,测试装置会通过告警的方式通知开发者或测试人员进行优化。
本发明实施例提供的基于多数据源的测试装置可执行本发明任意实施例所提供的基于多数据源的测试方法,具备执行方法相应的功能模块和有益效果。
图7是本发明实施例提供的一种基于多数据源的测试设备的结构示意图。该基于多数据源的测试设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图7所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如一种基于多数据源的测试方法。
在一些实施例中,基于多数据源的测试方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的基于多数据源的测试方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于多数据源的测试方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
本发明实施例还提供一种计算机程序产品,该计算机程序产品包括计算机可执行指令,所述计算机可执行指令在由计算机处理器执行时用于执行本发明任意实施例所提供的基于多数据源的测试方法。
计算机程序产品在实现的过程中,可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
当然,本申请实施例所提供的计算机程序产品,其计算机可执行指令不限于如上所述的方法操作,还可以执行本申请任意实施例所提供的方法中的相关操作。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (12)

1.一种基于多数据源的测试方法,其特征在于,所述测试方法包括:
获取目标操作数据;
将所述目标操作数据同时分发到所有数据源,其中,所述数据源的数量为至少两个;
获取所有所述数据源执行所述目标操作数据的操作结果,其中,所述操作结果包括执行所述目标操作数据的执行结果以及执行时长;
将所述操作结果与标杆结果进行对比,确定是否存在操作异常的所述数据源,其中,所述标杆结果为多个所述操作结果中的一个,所述标杆结果依据历史数据操作准确度确定得到。
2.根据权利要求1所述的基于多数据源的测试方法,其特征在于,在获取目标操作数据之前,所述测试方法还包括:
实时监测服务器端是否接收到外部操作请求;
若是,则判断所述外部操作请求中是否包含数据的查询、存储、更新或删除;
若包含,则拦截所述服务器端基于所述外部操作请求执行的数据服务操作,并执行获取所述目标操作数据的动作。
3.根据权利要求1所述的基于多数据源的测试方法,其特征在于,将所述目标操作数据同时分发到所有数据源包括:
根据当前所述数据源的数量启用相应数量的线程,其中,一个所述线程对应一个不同的所述数据源;
将所述目标操作数据同时分发至每个所述线程。
4.根据权利要求3所述的基于多数据源的测试方法,其特征在于,在将所述目标操作数据同时分发至每个所述线程之后,所述测试方法还包括:
每个所述线程基于预设映射规则匹配出相应所述数据源执行所述目标操作数据所需要的执行方法;
每个所述数据源利用匹配出的执行方法执行所述目标操作数据,得到相应的操作结果。
5.根据权利要求1所述的基于多数据源的测试方法,其特征在于,将所述操作结果与标杆结果进行对比,确定是否存在操作异常的所述数据源包括:
将所述操作结果中的所述执行结果与所述标杆结果中的执行结果进行对比,判断是否一致;
若一致,则判断所述操作结果中的所述执行时长是否超过所述标杆结果中的执行结果中的执行时长预设百分比;
若超过所述预设百分比,则相应所述数据源存在操作异常。
6.根据权利要求1所述的基于多数据源的测试方法,其特征在于,在确定出存在具有操作异常的所述数据源之后,所述测试方法还包括:
提示相应所述数据源的操作存在异常情况。
7.根据权利要求1-6任一所述的基于多数据源的测试方法,其特征在于,所述数据源为使用结构化查询语言的数据源。
8.一种基于多数据源的测试装置,其特征在于,所述测试装置包括:
数据服务请求拦截单元,用于获取目标操作数据;
所述数据服务请求拦截单元还用于将所述目标操作数据同时分发到所有数据源,其中,所述数据源的数量为至少两个;
结果分析单元,用于获取所有所述数据源执行所述目标操作数据的操作结果,其中,所述操作结果包括执行所述目标操作数据的执行结果以及执行时长;
所述结果分析单元还用于将所述操作结果与标杆结果进行对比,确定是否存在操作异常的所述数据源,其中,所述标杆结果为多个所述操作结果中的一个,所述标杆结果依据历史数据操作准确度确定得到。
9.根据权利要求8所述的基于多数据源的测试装置,其特征在于,在所述数据服务请求拦截单元获取目标操作数据之前,所述测试装置还包括:
数据资源调度单元,用于实时监测服务器端是否接收到外部操作请求;
若监测到服务器端接收到外部操作请求,则所述数据资源调度单元还用于判断所述外部操作请求中是否包含数据的查询、存储、更新或删除;
若所述数据资源调度单元的判断结果为包含,则所述数据服务请求拦截单元拦截所述服务器端基于所述外部操作请求执行的数据服务操作,并执行获取所述目标操作数据的动作。
10.一种基于多数据源的测试设备,其特征在于,所述基于多数据源的测试设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的基于多数据源的测试方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的基于多数据源的测试方法。
12.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-7中任一项所述的基于多数据源的测试方法。
CN202310627476.7A 2023-05-30 2023-05-30 一种基于多数据源的测试方法、装置及设备 Pending CN116483732A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310627476.7A CN116483732A (zh) 2023-05-30 2023-05-30 一种基于多数据源的测试方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310627476.7A CN116483732A (zh) 2023-05-30 2023-05-30 一种基于多数据源的测试方法、装置及设备

Publications (1)

Publication Number Publication Date
CN116483732A true CN116483732A (zh) 2023-07-25

Family

ID=87215811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310627476.7A Pending CN116483732A (zh) 2023-05-30 2023-05-30 一种基于多数据源的测试方法、装置及设备

Country Status (1)

Country Link
CN (1) CN116483732A (zh)

Similar Documents

Publication Publication Date Title
JP7237110B2 (ja) 故障予測方法、装置、電子設備、記憶媒体、及びプログラム
CN114090113B (zh) 数据源处理插件动态加载的方法、装置、设备及存储介质
CN114861039A (zh) 一种搜索引擎的参数配置方法、装置、设备及存储介质
CN116645082A (zh) 一种系统巡检方法、装置、设备以及存储介质
CN116545905A (zh) 一种服务健康检测方法、装置、电子设备及存储介质
CN115687406A (zh) 一种调用链数据的采样方法、装置、设备及存储介质
CN115437961A (zh) 数据处理方法、装置、电子设备及存储介质
CN115495151A (zh) 规则引擎的迁移方法、装置、设备、存储介质及程序产品
CN116483732A (zh) 一种基于多数据源的测试方法、装置及设备
CN115455091A (zh) 数据生成方法、装置、电子设备和存储介质
CN115438056A (zh) 一种数据获取方法、装置、设备以及存储介质
EP3832985A1 (en) Method and apparatus for processing local hot spot, electronic device and storage medium
CN115509931A (zh) 基于系统的性能测试方法、装置、电子设备及存储介质
CN114693116A (zh) 代码评审有效性的检测方法及装置、电子设备
CN114389969A (zh) 客户端的测试方法、装置、电子设备和存储介质
CN113434382A (zh) 数据库性能监控方法、装置、电子设备及计算机可读介质
CN117424843B (zh) 一种管理方法、装置及ate测试系统
CN115858309B (zh) 面向分布式系统的数据监控方法、装置和电子设备
CN117155772B (zh) 一种告警信息丰富方法、装置、设备及存储介质
CN113360330A (zh) 并发锁测试方法、相关装置及计算机程序产品
CN115757275A (zh) 一种资产信息管理方法、装置、电子设备及存储介质
CN115454973A (zh) 数据迁移方法、装置、设备及存储介质
CN115391227A (zh) 基于分布式系统的故障测试方法、装置、设备及介质
CN116069764A (zh) 数据校验方法、装置、电子设备和存储介质
CN117729005A (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