CN116974948B - 业务系统测试方法、系统、设备和介质 - Google Patents
业务系统测试方法、系统、设备和介质 Download PDFInfo
- Publication number
- CN116974948B CN116974948B CN202311233041.0A CN202311233041A CN116974948B CN 116974948 B CN116974948 B CN 116974948B CN 202311233041 A CN202311233041 A CN 202311233041A CN 116974948 B CN116974948 B CN 116974948B
- Authority
- CN
- China
- Prior art keywords
- data
- request
- response
- service
- network
- 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.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 221
- 230000004044 response Effects 0.000 claims abstract description 218
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000001914 filtration Methods 0.000 claims description 41
- 238000003860 storage Methods 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 14
- 238000007405 data analysis Methods 0.000 claims description 4
- 238000005538 encapsulation Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 19
- 238000004519 manufacturing process Methods 0.000 description 13
- 230000006854 communication Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012423 maintenance Methods 0.000 description 8
- 230000006978 adaptation Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000007547 defect Effects 0.000 description 6
- 238000004088 simulation Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000007639 printing Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000000349 chromosome Anatomy 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
Abstract
本申请提供了业务系统测试方法、系统、设备和介质,涉及计算机技术领域,可以应用于云技术、人工智能、智慧交通、辅助驾驶等场景,包括获取第一业务系统的流量录制数据,是基于数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由第一业务系统发送的第一网络请求的第一请求数据和第一响应数据,第一业务系统的系统框架层中预先部署数据上报配置;根据第一请求数据进行第二业务系统的系统测试,以获取第二业务系统基于第一请求数据进行业务请求生成的第二请求数据和第二响应数据;对比第一请求数据和第一响应数据,与第二请求数据和第二响应数据,并基于对比结果生成系统测试结果;本申请能够显著提升测试可靠度。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种业务系统测试方法、系统、设备和介质。
背景技术
业务系统上线后存在系统升级或更新需求,以实现系统功能迭代,在新系统上线前,需对其进行上线模拟测试,以确保其运行可靠性。相关技术通常部署一整套真实环境并构建大量自动化测试用例,以通过自动化测试用例尽可能复现真实运行环境的各种网络流量场景,进而结合实现测试用例的日志数据生成新业务系统的测试结果,以定位其存在的缺陷和问题。但该方式采用的测试环境需与真实环境大致相同,环境配置要求较高,且自动化测试用例需基于先验知识编写,主观和经验依赖性强,且所生成的日志数据与真实运行中存在差异,可靠性差,测试维护和问题定位成本高。
发明内容
本申请提供了一种业务系统测试方法、系统、设备和介质,能够降低测试环境部署需求且有效提升测试可靠性和降低问题定位成本。
一方面,本申请提供了一种业务系统测试方法,所述方法包括:
获取第一业务系统的流量录制数据,所述第一业务系统的系统框架层中预先部署数据上报配置,所述流量录制数据是基于所述数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由所述第一业务系统发送的第一网络请求的第一请求数据和所述第一请求数据对应的第一响应数据;
根据所述第一请求数据和所述第一响应数据进行第二业务系统的系统测试,以获取所述第二业务系统基于所述第一请求数据进行网络请求生成的第二请求数据和所述第二请求数据对应的第二响应数据,所述第二业务系统为所述第一业务系统对应的待测系统且复用所述第一业务系统的系统框架层;
将所述第一请求数据和所述第一响应数据,与所述第二请求数据和所述第二响应数据进行对比,并基于对比结果生成所述第二业务系统的系统测试结果。
另一方面提供了一种业务系统测试系统,所述测试系统包括数据录制端和数据回放端;
所述数据录制端用于获取第一业务系统的流量录制数据,所述第一业务系统的系统框架层中预先部署数据上报配置,所述流量录制数据是基于所述数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由所述第一业务系统发送的第一网络请求的第一请求数据和所述第一请求数据对应的第一响应数据;
所述数据回放端用于根据所述第一请求数据和所述第一响应数据进行第二业务系统的系统测试,以获取所述第二业务系统基于所述第一请求数据进行网络请求生成的第二请求数据和所述第二请求数据对应的第二响应数据,所述第二业务系统为所述第一业务系统对应的待测系统且复用所述第一业务系统的系统框架层第二网络请求;以及,用于将所述第一请求数据和所述第一响应数据,与所述第二请求数据和所述第二响应数据对比,并基于对比结果生成针对所述第二业务系统的系统测试结果。
另一方面提供了一种计算机设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的业务系统测试方法。
另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如上述的业务系统测试方法。
另一方面提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的业务系统测试方法。
另一方面提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上述的业务系统测试方法。
另一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令被处理器执行时实现如上述的业务系统测试方法。
本申请提供的业务系统测试方法、系统、设备、存储介质、服务器、终端、计算机程序和计算机程序产品,具有如下技术效果:
本申请的技术方案首先获取第一业务系统的流量录制数据,该第一业务系统的系统框架层中预先部署数据上报配置,流量录制数据是基于数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由第一业务系统发送的第一网络请求的第一请求数据和第一请求数据对应的第一响应数据;然后,根据第一请求数据进行第二业务系统的系统测试,以获取第二业务系统基于第一请求数据进行业务请求生成的第二请求数据和第二请求数据对应的第二响应数据,第二业务系统为第一业务系统对应的待测系统且复用第一业务系统的系统框架层,以使待上线系统和线上系统均具有于部署的数据上报配置,以便于实现请求数据和响应数据的迭代采集和获取,实现后续系统上线的测试;进而,将第一请求数据和第一响应数据,与第二请求数据和第二响应数据进行对比,并基于对比结果生成第二业务系统的系统测试结果,如此,通过预埋的数据上报配置实现真实生产环境中网络流量数据的准实时获取,以用于系统测试中的请求模拟和测试结果生成,无需结合先验知识进行测试用例编制同时降低部署环境的配置要求,并提升测试的流量覆盖度;此外,结合线上的实际请求数据执行系统测试,并直接将线上实际生成的请求数据和响应数据与测试环境中生成的请求数据和响应数据对比,在降低测试系统要求的同时提升测试数据生成与线上数据生成的一致性,进而提升测试可靠度,降低测试维护和问题定位成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种应用环境的示意图;
图2是本申请实施例提供的一种业务系统测试方法的流程示意图;
图3是本申请实施例提供的一种业务系统测试的原理框架示意图;
图4是本申请实施例提供的一种生产环境中第一业务系统的数据采集原理框架示意图;
图5是本申请实施例提供的另一种业务系统测试方法的流程示意图;
图6是本申请实施例提供的一种测试环境中系统测试方法的原理框架示意图;
图7是本申请实施例提供的另一种业务系统测试方法的流程示意图;
图8是本申请实施例提供的一种数据对比的原理框架示例图;
图9是本申请实施例提供的一种业务系统测试系统的结构框架示意图;
图10是本申请实施例提供的一种执行业务系统测试方法的电子设备的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或子模块的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或子模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或子模块。
请参阅图1,图1是本申请实施例提供的一种应用环境的示意图,如图1所示,该应用环境可以包括业务请求端02、业务服务端01和测试端03。本申请实施例中的业务服务端01和测试端03可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
具体地,云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术能够应用于各种领域,如医疗云、云物联、云安全、云教育、云会议、人工智能云服务、云应用、云呼叫和云社交等,云技术基于云计算(cloud computing)商业模式应用,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”,“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务))平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
数据库(Database),简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。数据库管理系统(英语:Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML(Extensible Markup Language,即可扩展标记语言);或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类,例如SQL(结构化查询语言(Structured Query Language)、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。
具体地,上述涉及的服务器可以包括实体设备,可以具体包括有网络通信子模块、处理器和存储器等等,也可以包括运行于实体设备中的软体,可以具体包括有应用程序等。
本申请实施例中,业务请求端02可以响应于请求提交操作生成业务请求并发送至业务服务端01,以使业务服务端01响应于业务请求生成第一网络请求并发送至下游服务端,以使下游服务端响应并反馈业务响应,业务服务端01对业务响应封装以生成第一网络响应发送至业务请求端02;在上述业务请求和业务响应过程中,业务服务端01中运行的第一业务系统通过预先部署的数据上报配置对应的上报服务获取第一请求数据和第二请求数据,并发送至测试端03,以使测试端03基于第一请求数据对第二业务系统进行系统测试,以生成系统测试结果。
此外,可以理解的是,图1所示的仅仅是一种业务系统测试方法的应用环境,该应用环境可以包括更多或更少的节点,本申请在此不做限制。如应用环境的业务请求端02也可以为终端,也可以为服务器,用于向业务服务端01发送网路请求,本申请在此不做限制。具体地,终端可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、智能语音交互设备、智能家电、智能可穿戴设备、车载终端设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如应用程序等。
本申请实施例涉及的应用环境,或应用环境中的终端01和服务器等可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。分布式系统可以为区块链系统,该区块链系统可以提供上述的业务系统测试服务和数据存储服务等。
一些实施例中,结合图3,业务服务端01可以运行第一业务系统,部署于实际的生产环境,第一业务系统接收业务请求端02的业务请求并通过接口调用向下游服务端转发请求,进而接收下游服务端的业务服务接口(接口A,接口B等)发送的业务响应,并转发至业务请求端;测试端03包括数据录制端、数据库、数据回放端,部署于测试环境,数据录制端通过运行于第一业务系统的数据上报服务获取经由第一业务系统发送的请求的第一请求数据和响应的第一响应数据并存储至数据库;数据回放端从数据库中获取第一请求数据,以对待测的第二业务系统发送相应的请求,以使第二业务系统通过接口调用向测试服务端发送请求,并接收测试服务端的发送的业务响应;在该过程中,将经由第二业务系统发送的请求的第二请求数据和响应的第二响应数据存储至数据库,以用于请求数据对比和响应数据对比,生成对比结果,结合该对比结果定位第二业务系统的缺陷和问题,实现测试结果生成。
以下基于上述应用环境或业务系统测试系统介绍本申请的技术方案,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。请参考图2,图2是本申请实施例提供的一种业务系统测试方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体地,如图2所示,方法可以包括下述步骤S201-S205:
S201:获取第一业务系统的流量录制数据。
具体地,第一业务系统的系统框架层中预先部署数据上报配置,该数据上报配置可以通过系统框架层中植入上报代码实现。数据上报配置用于配置业务系统中网络请求和网络响应的数据上报比例、上报内容和数据格式。一些情况下,可以部署为对业务系统的全部网络请求和网络响应的数据进行上报,另一些情况下,可以部署为基于业务系统调用的不同接口类型设置相应的网络请求和网络响应上报比例。具体地,数据上报的方式可以为字节流上报。
具体地,流量录制数据是基于数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由第一业务系统发送的第一网络请求的第一请求数据和第一请求数据对应的第一响应数据。具体地,第一网络请求是指第一业务系统响应于业务请求端发送的业务请求生成并转发至下游服务端的请求,第一网络响应是指第一业务系统基于下游服务端发送的第一网络请求对应的业务响应所生成并转发至业务请求端的响应。一实施例中,流量录制数据是数据上报配置对应的上报服务响应于日志打印事件上报的所述日志打印事件对应的待打印日志的网络流量数据,上报服务可以从日志模块中批量获取以上述统一协议数据格式发送至该日志模块且在日志数据生成之前的网络流量数据,以实现录制数据的统一批量截取和上报。统一协议数据格式对应的网络协议可以为第一业务系统中内部模块间的通信协议,如Msgpack协议。
第一请求数据包括第一网络请求的原始的请求数据字节流和第一网络请求的标识信息,该标识信息包括但不限于该请求的uuid(Universally Unique Identifier,通用唯一标识符)、调用的业务服务接口的接口类型信息、服务模块名等信息,服务模块名可以为业务系统中处理该请求的业务逻辑模块的名称;第一响应数据包括第一网络响应的原始的响应数据字节流和第一网络响应的标识信息,该标识信息包括但不限于该响应的uuid(Universally Unique Identifier,通用唯一标识符)、调用的业务服务接口的接口类型信息、服务模块名等信息。可以理解地,某第一网络请求与基于其反馈的第一网络响应的标识信息至少部分相同。
具体地,第一业务系统运行时,基于系统框架层中的数据上报配置启动对应的上报服务,以针对第一网络请求和第一网络请求对应的第一网络响应的数据进行获取并发送至数据录制端,在进行系统测试前,数据录制端可以将流量录制数据存储至数据库,以标识信息为键,以字节流数据为值存储,一个示例中,字节流数据可以经base64编码后存入数据库。
结合图4,第一业务系统包括业务逻辑模块、协议适配层和网络处理层,数据库包括录制数据库;业务请求端发送业务请求至网络处理层,业务请求端可以基于业务需求采用不同的网络协议发送业务请求,包括但不限于http(Hypertext Transfer Protocol,超文本传输协议)、Msgpack(MessagePack)协议等;网络处理层解析业务请求并发送至协议适配层进行协议适配,以将业务请求以预设统一协议调用其相应的业务服务接口,以调用相应的业务逻辑模块进行请求解析和任务分发,并通过预设统一协议将相应的解析和分发结果反馈至协议适配层,选择该请求所需调用的下游服务接口所需适配的协议(协议a,协议n等),进而通过网络处理层以相应协议向下游服务端发送基于前述业务请求生成的第一网络请求,并通过网络处理层接收下游服务端的业务响应;协议适配层接收到业务响应后以预设统一协议发送至业务逻辑模块,重新经协议适配层、网络处理层后以业务请求协议类型将相应的第一网络响应反馈至业务请求端。同时,业务逻辑模块将上述请求和响应过程中的网络流量数据,包括第一网络请求的第一请求数据和第一网络响应的第一响应数据,以预设统一协议对应的统一协议数据格式发送至日志模块,以用于日志打印,转换为统一协议数据格式的网络流量数据并发送至日志模块以生成日志数据写入协议对应的数据格式的日志文件存储,在统一协议数据格式的网络流量数据发送至日志模块和进行日志文件转换前,基于上报服务将转化为日志数据格式前的网络流量数据以数据字节流形式上报至数据录制端;数据录制端通过解析数据字节流数据,以得到的标识信息为键将该数据存储至录制数据库,以用于后续的系统测试发包和测试服务端回包。一个示例中,预设统一协议可以为Msgpack协议。通过上报服务实现数据字节流上报,以保留信息完整度,便于后续的数据回放还原,同时以标识信息为键,便于后续请求数据和响应数据的匹配、对比,提升测试效率。
具体地,统一协议格式的网络流量数据的的日志打印事件处触发和日志数据生成服务基于预先部署于系统框架层中的服务配置实现,业务系统的所有业务请求均触发日志数据生成服务的数据生成操作,能够复用于各版本的业务系统。
一些实施例中,数据上报配置预设有调用同一接口类型业务服务接口的第一网络请求所对应的上报比例信息,该上报比例信息用于指示调用相应接口类型的业务服务接口的所有第一网络请求中所需上报的第一网络请求所占的比例,如预设上报比例为30%,则在该接口类型的所有第一网络请求中抽取30%。统一协议数据格式的网络流量数据携带有第一网络请求所需调用的业务服务接口的接口类型信息;相应地,在上报服务进行数据上报过程中,识别第一网络请求的接口类型信息,基于该接口类型对应的预设上报比例抓取第一网络请求的第一请求数据并上报至数据录制端,即流量录制数据是第一业务系统以每一接口类型对应的上报比例信息为相应业务服务接口的第一网络请求的抓取比例限制,通过数据上报配置对应的上报服务对统一协议数据格式的网络流量数据进行基于接口类型信息的请求流量数据抓取所得到的,不同接口类型的预设上报比例可以相同也可以不同。如此,支持根据不同接口类型配置不同比例上报,从而使采集数据更精细化,提升流量覆盖的可靠度,进而提升后续测试的准确性,同时针对线上真实环境中产生的流量数据进行适量采集,降低系统测试压力和冗余耗时。
S203:根据第一请求数据和第一响应数据进行第二业务系统的系统测试,以获取第二业务系统基于第一请求数据进行网络请求生成的第二请求数据和第二请求数据对应的第二响应数据。
具体地,第二业务系统为第一业务系统对应的待测系统且复用第一业务系统的系统框架层,其系统框架层中也预先布置数据上报配置,以在第二业务系统上线后,能够上报网络流量数据并对第二业务系统对应的待测系统进行系统测试。第二业务系统可以为第一业务系统的升级或更新版本,两系统的系统结构相类似或相同。
具体地,系统测试基于测试环境运行,第一请求数据用于生成发送至第二业务系统的测试业务请求,该测试业务请求与第一请求数据对应的业务请求携带一致的请求信息,实现对实际生产环境中业务请求的复现回放。第二业务系统响应于测试业务请求进行后续的网络通信,以得到第二请求数据和相应的第二响应数据。
一些实施例中,参考图5,S203可以包括S2031-S2033:
S2031:基于第一请求数据向第二业务系统发送测试业务请求,以使第二业务系统基于测试业务请求向测试服务端发送第二网络请求并接收测试服务端基于第一响应数据反馈的测试业务响应;
S2032:接收第二业务系统响应于测试业务响应生成的第二网络响应;
S2033:基于第二网络请求获取第二请求数据,并基于第二网络响应获取第二响应数据。
具体地,数据回放端从数据库中获取第一请求数据,并解析和复现为测试业务请求以发送至第二业务系统,与第一业务系统相类似的,第二业务系统基于测试业务请求生成第二网络请求以发送至测试服务端,测试服务端响应于第二网络请求并结合第一请求数据对应的第一响应数据生成测试业务响应,并发送至第二业务系统,然后第二业务系统对测试业务响应进行处理以生成反馈至数据回放端的第二网络响应,进而完成实际生产环境中发送至第一业务系统的业务请求相应的过程复现。如此,结合实际生产环境中的第一请求数据和第一响应数据进行系统测试中的请求通信过程复现,实现历史功能回归,无需预先设置测试用例,降低测试成本和提升测试数据的真实性,同时降低测试服务端的业务处理要求,减少维护成本且测试场景更丰富,进而提升测试环境仿真真实度,优化第二业务系统的测试效果。
并且,本申请对同一业务系统的相关测试进行单系统回放,不受外部环境影响,可以降低维护成本和定位问题时间成本。
具体地,测试服务端模拟下游服务端的下游服务接口,以实现基于第一响应数据的响应模拟生成。一些实施例中,测试服务端基于mock测试技术构建,以实现第二网络请求的响应反馈。
一些实施例中,第二请求数据和第二响应数据为第二业务系统基于数据上报部署对应的上报服务在针对第二网络请求和第二网络响应进行日志数据生成之前所上报的统一协议数据格式的网络流量数据,与第一业务系统的网络流量数据上报的触发和方式一致,通过数据回放端存储至数据库。如此,在测试过程中更真实的复现第一业务系统的运行和数据采集过程,提升后续对比数据的可靠性。
另一些实施例中,第二请求数据是测试服务端发送至数据库并存储的,第二响应数据为数据回放端发送至数据库并存储的,以简化第二业务系统的通信压力,简化回放数据采集流程。
具体地,第一业务系统和第二业务系统中业务逻辑模块与网络协议解耦,即业务逻辑模块和业务系统内部的其它模块、系统框架层是通过自定义的标准数据结构进行交互,即转换为同一网络协议进行通信,系统框架层会将外来请求的所有类型的网络协议解析为标准数据结构后传给业务逻辑模块,业务逻辑模块处理完成后,也以标准数据结构返回给框架并携带服务模块名;系统框架层通过服务模块名匹配到对应的协议类型进行发送。即,业务逻辑模块本身并不知晓系统框架层调用的下游服务接口是哪种协议。相应地,一些实施例中,本申请的系统测试过程中,第二业务系统与测试服务端通过预设统一协议通信。预设统一协议为第一业务系统和第二业务系统内部模块间的网络协议,示例性地,可以为msgpack协议。
可以理解地,以图4为例,真实生产环境中,单一业务请求端或不同业务请求端发送的不同业务请求间可能存在多种类型的网络协议,即业务系统连接的外部接口的网络协议非常复杂,除了标准的http协议外还有各种私有协议,致使业务系统需进行网络协议转换以实现系统内部通信,然后再以适配下游服务接口的网络协议发送至下游服务端,业务响应的反馈过程同样涉及多协议的转换和适配,相关技术的测试环境需部署与真实生产环境几乎相同的测试环境,需实现各种不同网络协议对应的部署配置,工作量极大且易在测试过程中引入环境缺陷干扰,本申请通过配置测试服务端以预设统一协议接收请求和反馈响应,以与第二业务系统内部的通信网络协议适配,无需在测试环境中部署和实现复杂的协议体系,有效解决多协议解析和转换的难点,降低系统部署、维护和测试成本,提升测试效率。
一些实施例中,统一协议数据格式的网络流量数据所对应的网络协议与预设统一协议一致,即日志模块是基于预设统一协议的数据结构接收待打印日志的网络流量数据的,如此,统一真实生产环境中最后生成的流量录制数据的数据结构和通信网络协议,进一步降低业务测试系统中数据回放端和测试服务端的数据解析、复现和通信成本。
具体地,测试业务响应是测试服务端基于数据匹配得到第二网络请求匹配的第一响应数据,并对匹配到的第一响应数据进行数据解析和协议封装所得到的。第二网络请求携带有第一请求数据的标识信息,测试服务端根据该标识信息从数据库中匹配到携带有同一标识信息的第一响应数据,如根据uuid、数据集合ID等进行匹配,进而将匹配到的第一响应数据的字节流数据进行解析为前述预设统一协议的数据结构,发送至第二业务系统。如此,结合提前录制的响应数据进行测试过程中请求反馈,使测试服务端无需部署真实的业务环境,降低测试系统部署和实现压力,进而降低测试和维护成本。
一个实施例中,结合图6,数据库包括录制数据库和回放数据库,系统测试过程为:数据回放端从录制数据库中获取第一请求数据,并对第一请求数据进行字节流解析以生成测试业务请求,以模拟的业务请求端的协议(如http或Msgpack等)发送至第二业务系统;第二业务系统的系统框架层将各协议类型(如协议a,协议n等)的测试业务请求转换为预设统一协议的数据结构并发送至业务逻辑模块进行请求响应,并基于业务逻辑模块返回的响应生成第二网络请求,然后以预设统一协议将第二网络请求发送至测试服务端;测试服务端响应于第二网络请求从录制数据库中匹配相应的第一响应数据并获取其接口类型信息,进而对第一响应数据进行字节流解析以生成测试业务响应并基于预设统一协议发送至第二业务系统;第二业务系统响应于测试业务响应,将其转换为测试业务请求对应协议的数据结构并进一步生成第二网络响应,发送至数据回放端,实现历史数据复现。在上述过程中,数据回放端基于第二网络响应向回放数据库录入第二响应数据,测试服务端基于第二网络请求向回放数据库录入第二请求数据。可以理解地,第二请求数据与第一请求数据的存储方式相类似,第二响应数据与第二响应数据的存储方式相类似,均以其标识信息为键。
其中,测试服务端的响应数据匹配中,根据第二网络请求携带的uuid、集合id、任务id和接口类型信息在录制数据库中匹配,集合id为第一请求数据和其匹配的第一响应数据在录制数据库中存储集合位置的唯一标识,任务id为第一请求数据的业务任务或测试任务的唯一标识,为数据存储中标记的标识。
S205:将第一请求数据和第一响应数据,与第二请求数据和第二响应数据进行对比,并基于对比结果生成第二业务系统的系统测试结果。
可以理解地,结合同一业务请求的数据进行测试复现,在外部条件不变即请求入参和下游响应不变的情况下,除系统自身升级或更新的变动参数,其它经由第二业务系统生成的数据参数也应该是不变的。即生成的第二请求数据与第一请求数据中、以及第二响应数据与第一响应数据中体现业务系统本质的参数和字段应一致,实现实际生产环境的数据录制和测试环境的回访数据录制后,对比同一业务请求的第一请求数据和第二请求数据,以及对比其第一响应数据和第二响应数据,实现经由业务系统反馈的响应对比,以及经由业务系统调用下游服务接口的请求对比,得到参数一致性结果,识别和定位不一致的实质数据内容,进而定位第二业务系统的问题和缺陷,实现测试结果生成。
一些实施例中,请求数据和响应数据还携带有特异性信息,该特异性信息为与第二业务系统的系统功能具有非相关性的信息,包括但不限于版本升级或更新中系统环境差异或特殊逻辑所导致的参数和字段等,如服务器ip、时间、随机订单号等。相应地,结合图7,S205可以包括下述S2051-S2053:
S2051:对第一请求数据、第一响应数据、第二请求数据和第二响应数据进行协议级的解包处理,得到第一解包请求数据、第一解包响应数据、第二解包请求数据和第二解包响应数据;
S2052:过滤第一解包请求数据、第一解包响应数据、第二解包请求数据和第二解包响应数据中的特异性信息,得到第一请求过滤数据、第一响应过滤数据、第二请求过滤数据和第二响应过滤数据;
S2053:将第一请求过滤数据和第一响应过滤数据,与第二请求过滤数据和第二响应过滤数据进行参数级数据对比,得到对比结果。
具体地,解包处理是指将请求数据或响应数据展开至最细粒度的协议参数级粒度,以实现响应数据对比和请求数据对比。过滤特异性信息是指去除数据中不具备对比一致性的信息,以对剩余数据内容进行参数级对比,即对比第一请求过滤数据和第二请求过滤数据中每一细粒度协议级参数间的异同,得到请求数据对比结果,以及对比第一响应过滤数据和第二响应过滤数据中每一细粒度协议级参数间的异同,得到响应数据对比结果。可以理解地,不一致的协议级参数或字段用于系统问题和缺陷的定位。如此,通过对数据进行预处理解包展开并过滤掉环境或特殊逻辑等导致的特异性差异,实现细粒度的可靠数据对比,提升测试结果准确性,且实现高效问题定位。
具体地,请求数据对比和响应数据对比可以通过数据回放端执行,或者基于数据库中的数据对比模块实现。
一个实施例中,结合图8,对比结果的生成过程为:将第一业务系统发送至业务请求端的第一网络响应所对应的第一响应数据与第二业务系统发送至数据回放端的第二网络响应所对应的第二响应数据进行响应数据对比,得到响应数据对比结果;将第一业务系统发送至下游服务端的第一网络请求所对应的第一请求数据与第二业务系统发送至测试服务端的第二网络请求所对应的第二请求数据进行请求数据对比,得到请求数据对比结果。
结合上述,本申请通过预埋的数据上报配置在不影响业务流程的情况下实现真实生产环境中网络流量数据的准实时获取,以用于系统测试中的请求模拟和测试结果生成,无需结合先验知识进行测试用例编制同时降低部署环境的配置要求,并提升测试的流量覆盖度;此外,结合线上的实际请求数据执行系统测试,并直接将线上实际生成的请求数据和响应数据与测试环境中生成的请求数据和响应数据对比,在降低测试系统要求的同时提升测试数据生成与线上数据生成的一致性,进而提升测试可靠度,降低测试维护和问题定位成本。
具体地,本申请的方案基于系统框架层和字节流上报的录制回放实现,该方案通过在业务系统的系统框架中增加上报功能,在不影响业务流程的情况下,能够获取每笔请求对上、下游服务的入参和出参、uuid染色体及其他辅助信息,并以字节流的形式转发到数据录制端进行处理;然后利用处理后的录制数据在待测业务系统的测试环境中回放,以回归系统的历史功能并实现服务间接口的协议级字段比对,解决了传统自动化用例环境因上、下游系统不稳定导致回归历史功能耗时较长问题,且弥补了传统自动化用例无法进行协议级字段比对的缺陷。此外,本方案采集现网生产环境流量进行回归,实现了历史功能验证,并对流量进行覆盖率分析,保证流量覆盖的可靠度,从而取代传统自动化用例,减少维护成本,且场景更丰富,提升了测试场景覆盖率;另外,由于进行单系统回放,降低了维护全量环境的成本,可以用于CI(持续集成)前置,提升转测效率。
本申请实施例还提供了一种业务系统测试系统900,如图9所示,图9示出了本申请实施例提供的一种业务系统测试系统的结构示意图,测试系统包括数据录制端10、数据回放端20和测试服务端30;
数据录制端10用于获取第一业务系统的流量录制数据,第一业务系统的系统框架层中预先部署数据上报配置,流量录制数据是基于数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由第一业务系统发送的第一网络请求的第一请求数据和第一请求数据对应的第一响应数据;
数据回放端20用于根据第一请求数据和第一响应数据进行第二业务系统的系统测试,以获取第二业务系统基于第一请求数据进行网络请求生成的第二请求数据和第二请求数据对应的第二响应数据,第二业务系统为第一业务系统对应的待测系统且复用第一业务系统的系统框架层第二网络请求;以及,用于将第一请求数据和第一响应数据,与第二请求数据和第二响应数据对比,并基于对比结果生成针对第二业务系统的系统测试结果。
一些实施例中,数据回放端20具体用于基于第一请求数据向第二业务系统发送测试业务请求,以使第二业务系统基于测试业务请求向测试服务端30发送第二网络请求并接收测试服务端30基于第一响应数据反馈的测试业务响应;接收第二业务系统响应于测试业务响应生成的第二网络响应;以及基于第二网络请求获取第二请求数据,并基于第二网络响应获取第二响应数据。
一些实施例中,测试业务响应是测试服务端30基于数据匹配得到第二网络请求匹配的第一响应数据,并对匹配到的第一响应数据进行数据解析和协议封装所得到的。
一些实施例中,在系统测试过程中,第二业务系统与测试服务端30通过预设统一协议通信。
一些实施例中,统一协议数据格式的网络流量数据所对应的网络协议与预设统一协议一致。
一些实施例中,数据上报配置预设有调用同一接口类型的业务服务接口的第一网络请求所对应的上报比例信息;统一协议数据格式的网络流量数据携带有第一网络请求所需调用的业务服务接口的接口类型信息;流量录制数据是第一业务系统以每一接口类型对应的上报比例信息为相应业务服务接口的第一网络请求的抓取比例限制,通过数据上报配置对应的上报服务对统一协议数据格式的网络流量数据进行基于接口类型信息的请求流量数据抓取所得到的。
一些实施例中,数据回放端20具体用于对第一请求数据、第一响应数据、第二请求数据和第二响应数据进行协议级的解包处理,得到第一解包请求数据、第一解包响应数据、第二解包请求数据和第二解包响应数据;过滤第一解包请求数据、第一解包响应数据、第二解包请求数据和第二解包响应数据中的特异性信息,得到第一请求过滤数据、第一响应过滤数据、第二请求过滤数据和第二响应过滤数据,特异性信息为与第二业务系统的系统功能具有非相关性的信息;以及,将第一请求过滤数据和第一响应过滤数据,与第二请求过滤数据和第二响应过滤数据进行参数级数据对比,得到对比结果。
需要说明的是,上述系统实施例与方法实施例基于相同的实施方式。
本申请实施例提供了一种设备,该设备可以为终端或服务器,包括处理器和存储器,该存储器中存储有至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的业务系统测试方法。
存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及业务系统测试。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置等电子设备中执行。图10是本申请实施例提供的一种业务系统测试方法的电子设备的硬件结构框图。如图10所示,该电子设备1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,CPU)1010(处理器1010可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1030,一个或一个以上存储应用程序1023或数据1022的存储介质1020(例如一个或一个以上海量存储设备)。其中,存储器1030和存储介质1020可以是短暂存储或持久存储。存储在存储介质1020的程序可以包括一个或一个以上模块,每个模块可以包括对电子设备中的一系列指令操作。更进一步地,中央处理器1010可以设置为与存储介质1020通信,在电子设备1000上执行存储介质1020中的一系列指令操作。电子设备1000还可以包括一个或一个以上电源1060,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1040,和/或,一个或一个以上操作系统1021,例如Windows ServerTM,Mac OSXTM,UnixTM, LinuxTM,FreeBSDTM等等。
输入输出接口1040可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备1000的通信供应商提供的无线网络。在一个实例中,输入输出接口1040包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口1040可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图10所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备1000还可包括比图10中所示更多或者更少的组件,或者具有与图10所示不同的配置。
本申请的实施例还提供了一种计算机可读存储介质,存储介质可设置于电子设备之中以保存用于实现方法实施例中一种业务系统测试方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述方法实施例提供的业务系统测试方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实现方式中提供的方法。
由上述本申请提供的业务系统测试方法、系统、装置、设备、存储介质、服务器、终端和程序产品,本申请的技术方案首先获取第一业务系统的流量录制数据,该第一业务系统的系统框架层中预先部署数据上报配置,流量录制数据是基于数据上报配置上报的具有统一协议数据格式且需存储为日志文件的网络流量数据,包括经由第一业务系统发送的第一网络请求的第一请求数据和第一请求数据对应的第一响应数据;然后,根据第一请求数据进行第二业务系统的系统测试,以获取第二业务系统基于第一请求数据进行业务请求生成的第二请求数据和第二请求数据对应的第二响应数据,第二业务系统为第一业务系统对应的待测系统且复用第一业务系统的系统框架层,以使待上线系统和线上系统均具有于部署的数据上报配置,以便于实现请求数据和响应数据的迭代采集和获取,实现后续系统上线的测试;进而,将第一请求数据和第一响应数据,与第二请求数据和第二响应数据进行对比,并基于对比结果生成第二业务系统的系统测试结果,如此,通过预埋的数据上报配置实现真实生产环境中网络流量数据的准实时获取,以用于系统测试中的请求模拟和测试结果生成,无需结合先验知识进行测试用例编制同时降低部署环境的配置要求,并提升测试的流量覆盖度;此外,结合线上的实际请求数据执行系统测试,并直接将线上实际生成的请求数据和响应数据与测试环境中生成的请求数据和响应数据对比,在降低测试系统要求的同时提升测试数据生成与线上数据生成的一致性,进而提升测试可靠度,降低测试维护和问题定位成本。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种业务系统测试方法,其特征在于,所述方法包括:
获取第一业务系统的流量录制数据,所述第一业务系统的系统框架层中预先部署数据上报配置,所述流量录制数据是基于所述数据上报配置上报的具有统一协议数据格式且发送至日志模块的需存储为日志文件的网络流量数据,包括经由所述第一业务系统发送的第一网络请求的第一请求数据和所述第一请求数据对应的第一响应数据;所述流量录制数据是所述第一业务系统以每一接口类型对应的上报比例信息为相应业务服务接口的第一网络请求的抓取比例限制,通过所述数据上报配置对应的上报服务对所述统一协议数据格式的网络流量数据进行基于接口类型信息的请求流量数据抓取所得到的;
基于所述第一请求数据向第二业务系统发送测试业务请求,以使所述第二业务系统基于所述测试业务请求向测试服务端发送第二网络请求并接收所述测试服务端基于所述第一响应数据反馈的测试业务响应,所述第二业务系统为所述第一业务系统对应的待测系统且复用所述第一业务系统的系统框架层;
接收所述第二业务系统响应于所述测试业务响应生成的第二网络响应;
基于所述第二网络请求获取第二请求数据,并基于所述第二网络响应获取第二响应数据;
将所述第一请求数据和所述第一响应数据,与所述第二请求数据和所述第二响应数据进行对比,并基于对比结果生成所述第二业务系统的系统测试结果。
2.根据权利要求1所述的方法,其特征在于,所述测试业务响应是所述测试服务端基于数据匹配得到所述第二网络请求匹配的第一响应数据,并对匹配到的第一响应数据进行数据解析和协议封装所得到的。
3.根据权利要求1所述的方法,其特征在于,在系统测试过程中,所述第二业务系统与所述测试服务端通过预设统一协议通信。
4.根据权利要求2所述的方法,其特征在于,所述统一协议数据格式的网络流量数据所对应的网络协议与预设统一协议一致。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述数据上报配置预设有调用同一接口类型的业务服务接口的第一网络请求所对应的上报比例信息;所述统一协议数据格式的网络流量数据携带有所述第一网络请求所需调用的业务服务接口的接口类型信息。
6.根据权利要求1-4中任一项所述的方法,其特征在于,所述对比结果采用下述方式生成:
对所述第一请求数据、所述第一响应数据、所述第二请求数据和所述第二响应数据进行协议级的解包处理,得到第一解包请求数据、第一解包响应数据、第二解包请求数据和第二解包响应数据;
过滤所述第一解包请求数据、所述第一解包响应数据、所述第二解包请求数据和所述第二解包响应数据中的特异性信息,得到第一请求过滤数据、第一响应过滤数据、第二请求过滤数据和第二响应过滤数据,所述特异性信息为与所述第二业务系统的系统功能具有非相关性的信息;
将所述第一请求过滤数据和所述第一响应过滤数据,与所述第二请求过滤数据和所述第二响应过滤数据进行参数级数据对比,得到所述对比结果。
7.一种业务系统测试系统,其特征在于,所述业务系统测试系统包括数据录制端和数据回放端;
所述数据录制端用于获取第一业务系统的流量录制数据,所述第一业务系统的系统框架层中预先部署数据上报配置,所述流量录制数据是基于所述数据上报配置上报的具有统一协议数据格式且发送至日志模块的需存储为日志文件的网络流量数据,包括经由所述第一业务系统发送的第一网络请求的第一请求数据和所述第一请求数据对应的第一响应数据;所述流量录制数据是所述第一业务系统以每一接口类型对应的上报比例信息为相应业务服务接口的第一网络请求的抓取比例限制,通过所述数据上报配置对应的上报服务对所述统一协议数据格式的网络流量数据进行基于接口类型信息的请求流量数据抓取所得到的;
所述数据回放端用于基于所述第一请求数据向第二业务系统发送测试业务请求,以使所述第二业务系统基于所述测试业务请求向测试服务端发送第二网络请求并接收所述测试服务端基于所述第一响应数据反馈的测试业务响应;接收所述第二业务系统响应于所述测试业务响应生成的第二网络响应;基于所述第二网络请求获取第二请求数据,并基于所述第二网络响应获取第二响应数据,所述第二业务系统为所述第一业务系统对应的待测系统且复用所述第一业务系统的系统框架层第二网络请求;以及,用于将所述第一请求数据和所述第一响应数据,与所述第二请求数据和所述第二响应数据对比,并基于对比结果生成针对所述第二业务系统的系统测试结果。
8.根据权利要求7所述的业务系统测试系统,其特征在于,所述测试业务响应是所述测试服务端基于数据匹配得到所述第二网络请求匹配的第一响应数据,并对匹配到的第一响应数据进行数据解析和协议封装所得到的。
9.根据权利要求7所述的业务系统测试系统,其特征在于,在系统测试过程中,所述第二业务系统与所述测试服务端通过预设统一协议通信。
10.根据权利要求7所述的业务系统测试系统,其特征在于,所述统一协议数据格式的网络流量数据所对应的网络协议与预设统一协议一致。
11.根据权利要求7-10中任一项所述的业务系统测试系统,其特征在于,所述数据上报配置预设有调用同一接口类型的业务服务接口的第一网络请求所对应的上报比例信息;所述统一协议数据格式的网络流量数据携带有所述第一网络请求所需调用的业务服务接口的接口类型信息。
12.根据权利要求7-10中任一项所述的业务系统测试系统,其特征在于,所述数据回放端具体用于:对所述第一请求数据、所述第一响应数据、所述第二请求数据和所述第二响应数据进行协议级的解包处理,得到第一解包请求数据、第一解包响应数据、第二解包请求数据和第二解包响应数据;过滤所述第一解包请求数据、所述第一解包响应数据、所述第二解包请求数据和所述第二解包响应数据中的特异性信息,得到第一请求过滤数据、第一响应过滤数据、第二请求过滤数据和第二响应过滤数据,所述特异性信息为与所述第二业务系统的系统功能具有非相关性的信息;以及,将所述第一请求过滤数据和所述第一响应过滤数据,与所述第二请求过滤数据和所述第二响应过滤数据进行参数级数据对比,得到所述对比结果。
13.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-6中任一项所述的业务系统测试方法。
14.一种计算机设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如权利要求1-6中任一项所述的业务系统测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311233041.0A CN116974948B (zh) | 2023-09-22 | 2023-09-22 | 业务系统测试方法、系统、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311233041.0A CN116974948B (zh) | 2023-09-22 | 2023-09-22 | 业务系统测试方法、系统、设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116974948A CN116974948A (zh) | 2023-10-31 |
CN116974948B true CN116974948B (zh) | 2024-01-09 |
Family
ID=88471654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311233041.0A Active CN116974948B (zh) | 2023-09-22 | 2023-09-22 | 业务系统测试方法、系统、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116974948B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234949B (zh) * | 2023-11-13 | 2024-03-19 | 广州品唯软件有限公司 | 测试数据降噪方法、装置、存储介质、计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110290210A (zh) * | 2019-06-27 | 2019-09-27 | 南京冰鉴信息科技有限公司 | 接口调用系统中不同接口流量比例自动调配方法及装置 |
US10769220B1 (en) * | 2019-04-09 | 2020-09-08 | Coupang Corp. | Systems, apparatuses, and methods of processing and managing web traffic data |
CN112559361A (zh) * | 2020-12-22 | 2021-03-26 | 京东数字科技控股股份有限公司 | 流量回放方法、装置、设备及计算机可读介质 |
CN113590497A (zh) * | 2021-09-27 | 2021-11-02 | 腾讯科技(深圳)有限公司 | 业务服务的测试方法、装置、电子设备及存储介质 |
CN115297041A (zh) * | 2022-07-29 | 2022-11-04 | 深圳前海微众银行股份有限公司 | 一种流量回放的数据验证方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10372596B2 (en) * | 2017-03-24 | 2019-08-06 | International Business Machines Corporation | Distributed system test device |
-
2023
- 2023-09-22 CN CN202311233041.0A patent/CN116974948B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10769220B1 (en) * | 2019-04-09 | 2020-09-08 | Coupang Corp. | Systems, apparatuses, and methods of processing and managing web traffic data |
CN110290210A (zh) * | 2019-06-27 | 2019-09-27 | 南京冰鉴信息科技有限公司 | 接口调用系统中不同接口流量比例自动调配方法及装置 |
CN112559361A (zh) * | 2020-12-22 | 2021-03-26 | 京东数字科技控股股份有限公司 | 流量回放方法、装置、设备及计算机可读介质 |
CN113590497A (zh) * | 2021-09-27 | 2021-11-02 | 腾讯科技(深圳)有限公司 | 业务服务的测试方法、装置、电子设备及存储介质 |
CN115297041A (zh) * | 2022-07-29 | 2022-11-04 | 深圳前海微众银行股份有限公司 | 一种流量回放的数据验证方法及装置 |
Non-Patent Citations (1)
Title |
---|
分层的互联网综合测量管理系统的研究;陈松等;计算机工程与应用(第14期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116974948A (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111752799A (zh) | 一种业务链路跟踪方法、装置、设备及储存介质 | |
CN102880503A (zh) | 数据分析系统及数据分析方法 | |
CN116974948B (zh) | 业务系统测试方法、系统、设备和介质 | |
JP4205323B2 (ja) | 配信システム、配信サーバとその配信方法、配信プログラム | |
CN106412034B (zh) | 业务处理方法及装置 | |
CN111309550A (zh) | 应用程序的数据采集方法、系统、设备和存储介质 | |
CN112988485A (zh) | 电力物联网设备模拟测试方法及装置 | |
CN111200523B (zh) | 中台系统配置方法、装置、设备及存储介质 | |
CN101894059A (zh) | 一种运行状态的检测方法及系统 | |
CN111064626A (zh) | 配置更新方法、装置、服务器及可读存储介质 | |
CN111427613B (zh) | 一种应用程序接口api管理方法和装置 | |
CN116204239A (zh) | 业务处理方法、装置和计算机可读存储介质 | |
CN110764769B (zh) | 处理用户请求的方法和装置 | |
CN112527618A (zh) | 一种日志收集方法及日志收集系统 | |
CN113778709B (zh) | 接口调用方法、装置、服务器及存储介质 | |
CN107968798A (zh) | 一种网管资源标签获取方法、缓存同步方法、装置及系统 | |
CN112491943A (zh) | 数据请求方法、装置、存储介质和电子设备 | |
CN115811481A (zh) | 一种交互服务测试方法、装置、计算机设备及存储介质 | |
CN112783842B (zh) | 一种日志收集方法和装置 | |
CN113973135A (zh) | 数据缓存处理方法、装置、缓存网格平台和存储介质 | |
CN114675872A (zh) | 一种对应用程序的数据处理方法、装置、设备及存储介质 | |
CN112363774A (zh) | Storm实时任务的配置方法及装置 | |
CN111901408A (zh) | 离线状态下的内容推荐方法、装置及计算机程序产品 | |
CN112306848A (zh) | 微服务系统的架构视图生成方法及装置 | |
CN113760836B (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 |