掌桥专利:专业的专利平台
掌桥专利
首页

适用于企业级架构的系统回归测试方法及装置

文献发布时间:2023-06-19 18:49:33


适用于企业级架构的系统回归测试方法及装置

技术领域

本发明涉及数据处理技术领域,特别是涉及到数据处理技术在金融领域应用,具体涉及一种适用于企业级架构的系统回归测试方法及装置。

背景技术

现有技术中,大型商业银行应用系统因承接复杂的业务功能及规则,在系统生命周期中不可避免的会产生代码间耦合,应用组件间耦合,此种情况会大大造成回归测试复杂度和难度升高。

发明内容

根据本发明所提供的适用于企业级架构的系统回归测试方法及装置,通过对生产报文数据截取,筛选,脱敏入库,可以形成测试报文基本数据,根据测试目的筛选不同测试报文进行交易重放,并将测试结果入库用于测试分析。其中,技术难题为生产运行影响最小原则下实现生产报文数据截取,筛选,脱敏入库。

为了实现上述目的,本发明提供了一种适用于企业级架构的系统回归测试方法,包括:

将目标网卡的流入数据以及流出数据写入共享存储;

解析所述共享存储中的原始流量数据,以生成解析结果;

对所述解析结果进行脱敏操作。

一实施例中,所述解析所述共享存储中的原始流量数据,以生成解析结果,包括:

还原所述目标网卡的原始请求报文;

按照流水号哈希值的顺序,存储所述原始请求报文,以生成所述解析结果。

一实施例中,适用于企业级架构的系统回归测试方法,还包括:

根据预先设置的扫描配置,对脱敏后的解析结果进行扫描;

当扫描命中时,停止线上复制。

一实施例中,适用于企业级架构的系统回归测试方法,还包括:

根据所述停止线上复制时的扫描结果重发交易,以生成测试环境返回报文。

一实施例中,适用于企业级架构的系统回归测试方法,还包括:

将所述测试环境返回报文与生产环境返回报文比对,以生成回归测试结果。

第二方面,本发明提供一种适用于企业级架构的系统回归测试装置,该装置包括:

数据写入模块,用于将目标网卡的流入数据以及流出数据写入共享存储;

流量数据解析模块,用于解析所述共享存储中的原始流量数据,以生成解析结果;

解析结果脱敏模块,用于对所述解析结果进行脱敏操作。

一实施例中,所述流量数据解析模块包括:

报文还原单元,用于还原所述目标网卡的原始请求报文;

解析结果生成单元,用于按照流水号哈希值的顺序,存储所述原始请求报文,以生成所述解析结果。

一实施例中,适用于企业级架构的系统回归测试装置,还包括:

结果扫描模块,用于根据预先设置的扫描配置,对脱敏后的解析结果进行扫描;

复制停止模块,用于当扫描命中时,停止线上复制。

一实施例中,适用于企业级架构的系统回归测试装置,还包括:

返回报文生成模块,用于根据所述停止线上复制时的扫描结果重发交易,以生成测试环境返回报文。

一实施例中,适用于企业级架构的系统回归测试装置,还包括:

报文对比模块,用于将所述测试环境返回报文与生产环境返回报文比对,以生成回归测试结果。

第三方面,本发明提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现一种适用于企业级架构的系统回归测试方法的步骤。

第四方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现适用于企业级架构的系统回归测试方法的步骤。

第五方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现适用于企业级架构的系统回归测试方法的步骤。

从上述描述可知,本发明实施例提供的适用于企业级架构的系统回归测试方法及装置,对应的方法包括:首先将目标网卡的流入数据以及流出数据写入共享存储;接着,解析共享存储中的原始流量数据,以生成解析结果;最后对所述解析结果进行脱敏操作。本发明实现了生产交易请求数据借用,脱敏,及后续不同场景交易回放,结果比对的完整流程。具有使用实际生产数据测试保证测试有效性及回归测试场景覆盖率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中提供的适用于企业级架构的系统回归测试方法的流程示意图一;

图2为本发明实施例中步骤200的流程示意图;

图3为本发明实施例中提供的适用于企业级架构的系统回归测试方法的流程示意图二;

图4为本发明实施例中提供的适用于企业级架构的系统回归测试方法的流程示意图三;

图5为本发明实施例中提供的适用于企业级架构的系统回归测试方法的流程示意图四;

图6为本发明实施例中针适用于企业级架构的系统回归测试装置的结构示意图一;

图7为本发明实施例中流量数据解析模块20的结构示意图;

图8为本发明实施例中针适用于企业级架构的系统回归测试装置的结构示意图二;

图9为本发明实施例中针适用于企业级架构的系统回归测试装置的结构示意图三;

图10为本发明实施例中针适用于企业级架构的系统回归测试装置的结构示意图四;

图11为本发明的实施例中的电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

在现有技术中,一般利用Doom自动回归平台进行回归测试,Doom自动回归平台是一个将一部分线上真实流量复制并用于自动回归测试的平台。通过创新的自动mock机制不仅支持读接口的回归验证,同时支持了写接口(例如用户下单接口、付款接口)的验证。它最底层借助了java的instrument实现aop因此,目前仅支持java应用的接入使用。上述方法存在以下技术痛点:

1.现有技术局限于Java应用接入;

2.现有技术目标为应用于生产环境的回归验证,无法满足商业银行系统生产/测试环境隔离,数据脱敏等要求;

基于上述技术痛点,本发明的实施例提供一种适用于企业级架构的系统回归测试方法的具体实施方式,参见图1,该方法具体包括如下内容:

步骤100:将目标网卡的流入数据以及流出数据写入共享存储;

具体地,复制指定网卡的流入流出数据(tcp或raw socket),将数据写入高速存储介质的共享存储。

步骤200:解析所述共享存储中的原始流量数据,以生成解析结果;

共享存储中数据,解析原始流量数据,还原原始请求报文,以流水号哈希,分发至后线脱敏处理集群并入库;

步骤300:对所述解析结果进行脱敏操作。

数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。在涉及客户安全数据或者一些商业性敏感数据的情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试使用,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏。数据安全技术之一,数据库安全技术主要包括:数据库漏扫、数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统。数据库安全风险包括:拖库、刷库、撞库。

数据库安全技术主要包括:数据库漏扫、数据库加密、数据库防火墙、数据脱敏、数据库安全审计系统。

数据脱敏通过对敏感信息采用脱敏方式进行匿名化,防止因生产库中的主要数据,明文显示在测试系统中,导致数据泄漏问题。

数据脱敏又分为静态数据脱敏(SDM)和动态数据脱敏(DDM):

1、静态数据脱敏,适用于将数据抽取出生产环境脱敏后分发至测试、开发、培训、数据分析等场景。有时可能需要将生产环境的数据copy到测试、开发库中,以此来排查问题或进行数据分析,但出于安全考虑又不能将敏感数据存储于非生产环境,此时就要把敏感数据从生产环境脱敏完毕之后再在非生产环境使用。这样脱敏后的数据与生产环境隔离,满足业务需要的同时又保障了生产数据的安全。

2、动态数据脱敏,一般用在生产环境,访问敏感数据时实时进行脱敏,因为有时在不同情况下对于同一敏感数据的读取,需要做不同级别的脱敏处理,例如:不同角色、不同权限所执行的脱敏方案会不同。注意:在抹去数据中的敏感内容同时,也需要保持原有的数据特征、业务规则和数据关联性,保证在开发、测试以及数据分析类业务不会受到脱敏的影响,使脱敏前后的数据一致性和有效性。

数据脱敏的方法,在数据脱敏的过程中,需要根据不同的数据使用场景,选择相应的数据脱敏方式:数据替换、掩码屏蔽、随机化、泛化、平均化、偏移取整

从上述描述可知,本发明实施例提供的适用于企业级架构的系统回归测试方法,包括:首先将目标网卡的流入数据以及流出数据写入共享存储;接着,解析共享存储中的原始流量数据,以生成解析结果;最后对所述解析结果进行脱敏操作。本发明实现了生产交易请求数据借用,脱敏,及后续不同场景交易回放,结果比对的完整流程。具有使用实际生产数据测试保证测试有效性及回归测试场景覆盖率。

一实施例中,参见图2,步骤200包括:

步骤201:还原所述目标网卡的原始请求报文;

步骤202:按照流水号哈希值的顺序,存储所述原始请求报文,以生成所述解析结果。

一实施例中,参见图3,适用于企业级架构的系统回归测试方法还包括:

步骤400:根据预先设置的扫描配置,对脱敏后的解析结果进行扫描;

步骤500:当扫描命中时,停止线上复制。

具体地,根据事前配置扫描入库报文,命中后停止线上复制进程。

一实施例中,参见图4,适用于企业级架构的系统回归测试方法还包括:

步骤600:根据所述停止线上复制时的扫描结果重发交易,以生成测试环境返回报文。

一实施例中,参见图5,适用于企业级架构的系统回归测试方法还包括:

步骤700:将所述测试环境返回报文与生产环境返回报文比对,以生成回归测试结果。

C/S架构,T+1日线上生产库脱敏复制到测试库,测试人员框选测试范围,重放交易,支持复杂场景交易编排。将测试环境返回报文与生产环境返回报文比对,并反馈比对结果给测试人员。

从上述描述可知,本发明实施例提供的适用于企业级架构的系统回归测试方法,通过以下四个方面解决现有技术中的技术痛点:

为进一步地说明本方案,本申请还提供适用于企业级架构的系统回归测试方法的具体应用实例。

术语解释:

回归测试:是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。

首先,本发明提供一种适用于企业级架构的系统回归测试系统,参见图4,该系统包括:原始流量复制模块、数据处理机运行的数据处理模块、后线脱敏处理模块、触发器守护程序以及交易回放测试模块,具体地:

1.原始流量复制模块,负责复制指定网卡的流入流出数据(tcp或raw socket),将数据写入高速存储介质的共享存储;

2.数据处理机运行的数据处理模块,共享存储中数据,解析原始流量数据,还原原始请求报文,以流水号哈希,分发至后线脱敏处理集群并入库;此模块是为原始数据写入和处理中间增加缓冲,避免对生产运行的影响;

3.后线脱敏处理模块用于将报文内数据脱敏,入库;

4.触发器守护程序,根据事前配置扫描入库报文,命中后停止线上复制进程。此是为减少生产资源占用,获取所需报文后停止流量复制。此模块是为流量获取增加中断机制,避免持续线上流量复制处理;

5.交易回放测试模块,C/S架构,T+1日线上生产库脱敏复制到测试库,测试人员框选测试范围,重放交易,支持复杂场景交易编排。将测试环境返回报文与生产环境返回报文比对,并反馈比对结果给测试人员。

基于上述的适用于企业级架构的系统回归测试系统,本申请提供的适用于企业级架构的系统回归测试方法的具体应用实例包括以下步骤:

S1:将目标网卡的流入数据以及流出数据写入共享存储;

在步骤S1之前,还需要完成下述工作:实现生产运行最小原则,需要完成以下功能:

1.基于四层网络/七层网络的原始流量复制,不做拆包/解包/注入,不做在线流量转发,以减少线上处理压力,避免占用生产服务器套接字资源;

2.原始流量文件持续写入管道,针对大量数据持续写入场景,设计数据写入方案;

3.建立触发器机制,支持事前配置流量复制结束场景。对于入测试环境的原始流量数据拆包分析,以流水号为索引入请求/返回表。并且设计监控程序,若所有结束场景均已抓获,则停止线上流量复制。

S2:解析共享存储中的原始流量数据,以生成解析结果;

S3:对解析结果进行脱敏操作。

在步骤S1至步骤S3中,企业级架构下的商业银行系统具有报文格式统一,请求协议统一,端到端全局流水号等特点。报文格式统一/应用组件间请求协议统一为4层/7层网络流量复制提供了可行性;端到端全局流水号为系统自动分析归类重放报文提供了可行性。全域的数据脱敏算法,为生产数据借用提供了可行性。端到端全局流水号为测试环境测试结果分析等提供了可行性。通过对生产报文数据截取,筛选,脱敏入库,可以形成测试报文基本数据,根据测试目的筛选不同测试报文进行交易重放,并将测试结果入库用于测试分析。

线上流量数据复制并生产数据脱敏入库,T+1日生产数据脱敏入库以满足交易回放比对要求。充分利用生产交易请求的实际场景进行回归测试,并满足银行生产数据保护的要求;复杂场景编排,满足商业银行复杂业务场景测试需求。

基于同一发明构思,本申请实施例还提供了适用于企业级架构的系统回归测试装置,可以用于实现上述实施例所描述的方法,如下面的实施例。由于适用于企业级架构的系统回归测试装置解决问题的原理与适用于企业级架构的系统回归测试方法相似,因此适用于企业级架构的系统回归测试装置的实施可以参见适用于企业级架构的系统回归测试方法实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

本发明的实施例提供一种能够实现适用于企业级架构的系统回归测试方法的适用于企业级架构的系统回归测试装置的具体实施方式,参见图6,适用于企业级架构的系统回归测试装置具体包括如下内容:

数据写入模块10,用于将目标网卡的流入数据以及流出数据写入共享存储;

流量数据解析模块20,用于解析所述共享存储中的原始流量数据,以生成解析结果;

解析结果脱敏模块30,用于对所述解析结果进行脱敏操作。

一实施例中,参见图7,所述流量数据解析模块20包括:

报文还原单元201,用于还原所述目标网卡的原始请求报文;

解析结果生成单元202,用于按照流水号哈希值的顺序,存储所述原始请求报文,以生成所述解析结果。

一实施例中,参见图8,适用于企业级架构的系统回归测试装置,还包括:

结果扫描模块40,用于根据预先设置的扫描配置,对脱敏后的解析结果进行扫描;

复制停止模块50,用于当扫描命中时,停止线上复制。

一实施例中,参见图9,适用于企业级架构的系统回归测试装置,还包括:

返回报文生成模块60,用于根据所述停止线上复制时的扫描结果重发交易,以生成测试环境返回报文。

一实施例中,参见图10,适用于企业级架构的系统回归测试装置,还包括:

报文对比模块70,用于将所述测试环境返回报文与生产环境返回报文比对,以生成回归测试结果。

从上述描述可知,本发明实施例提供的适用于企业级架构的系统回归测试装置,包括:首先将目标网卡的流入数据以及流出数据写入共享存储;接着,解析共享存储中的原始流量数据,以生成解析结果;最后对所述解析结果进行脱敏操作。本发明实现了生产交易请求数据借用,脱敏,及后续不同场景交易回放,结果比对的完整流程。具有使用实际生产数据测试保证测试有效性及回归测试场景覆盖率。

本申请的实施例还提供能够实现上述实施例中的适用于企业级架构的系统回归测试方法中全部步骤的一种电子设备的具体实施方式,参见图11,电子设备具体包括如下内容:

处理器(processor)1201、存储器(memory)1202、通信接口(CommunicationsInterface)1203和总线1204;

其中,处理器1201、存储器1202、通信接口1203通过总线1204完成相互间的通信;通信接口1203用于实现服务器端设备以及用户端设备等相关设备之间的信息传输。

处理器1201用于调用存储器1202中的计算机程序,处理器执行计算机程序时实现上述实施例中的适用于企业级架构的系统回归测试方法中的全部步骤,例如,处理器执行计算机程序时实现下述步骤:

步骤100:将目标网卡的流入数据以及流出数据写入共享存储;

步骤200:解析所述共享存储中的原始流量数据,以生成解析结果;

步骤300:对所述解析结果进行脱敏操作。

本申请的实施例还提供能够实现上述实施例中的适用于企业级架构的系统回归测试方法中全部步骤的一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的适用于企业级架构的系统回归测试方法的全部步骤,例如,处理器执行计算机程序时实现下述步骤:

步骤100:将目标网卡的流入数据以及流出数据写入共享存储;

步骤200:解析所述共享存储中的原始流量数据,以生成解析结果;

步骤300:对所述解析结果进行脱敏操作。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

虽然本申请提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 适用于垂直轴旋转流场的测试方法和装置
  • 一种适用于核心系统的自动化回归测试方法及系统
  • 一种微服务架构下的精确回归测试方法及装置
技术分类

06120115708507