请求录制方法、装置、设备及存储介质与流程

文档序号:28740155发布日期:2022-02-07 21:45阅读:63来源:国知局
请求录制方法、装置、设备及存储介质与流程

1.本发明涉及数据采集技术领域,尤其涉及一种请求录制方法、装置、设备及存储介质。


背景技术:

2.目前,通常通过测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。然而,由于测试工具在模拟数据时的速率不高,导致无法在短时间内模拟出大量数据用于测试。
3.为了能够在短时间内获取到大量的测试请求,请求录制方式应运而生。然而,在目前的请求录制方案中,通常只能在检测到请求响应异常时进行请求录制,造成无法拦截到响应正常的请求进行录制。


技术实现要素:

4.鉴于以上内容,有必要提供一种请求录制方法、装置、设备及存储介质,能够拦截到运行正常的请求,从而提高系统测试的准确性。
5.一方面,本发明提出一种请求录制方法,应用于电子设备,所述电子设备分别与多个处理服务器及数据库服务器相通信,所述电子设备中包括设备数据库,所述请求录制方法包括:
6.当接收到请求录制指令时,根据所述请求录制指令生成匹配表达式;
7.获取所述多个处理服务器中的报文请求;
8.根据所述匹配表达式对所述报文请求进行筛选,得到目标报文;
9.根据所述目标报文的对象来源提取报文数据;
10.检测所述设备数据库的存储情况,得到检测结果;
11.若所述检测结果为预设结果,获取所述设备数据库中的第一存储信息,并获取所述数据库服务器中的第二存储信息;
12.将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果;
13.根据所述比较结果更新所述第二存储信息,得到录制信息。
14.根据本发明优选实施例,所述根据所述请求录制指令生成匹配表达式包括:
15.提取所述请求录制指令中的特征字符串;
16.定位所述电子设备的显示界面;
17.从所述显示界面中捕获用户的输入参数;
18.将所述特征字符串及所述输入参数写入预设指令中,得到所述匹配表达式。
19.根据本发明优选实施例,所述根据所述匹配表达式对所述报文请求进行筛选,得到目标报文包括:
20.提取所述报文请求中的请求对象;
21.将与所述特征字符串相同的请求对象所在的报文请求确定为初筛报文;
22.检测所述初筛报文中是否包含所述输入参数;
23.若所述初筛报文中包含所述输入参数,则将该初筛报文确定为所述目标报文。
24.根据本发明优选实施例,所述根据所述目标报文的对象来源提取报文数据包括:
25.检测所述对象来源的对象类型;
26.若所述对象类型为转发型服务器,根据预设标签解析所述目标报文,得到所述报文数据;或者
27.若所述对象类型为本地型服务器,将所述目标报文确定为所述报文数据。
28.根据本发明优选实施例,所述检测所述设备数据库的存储情况,得到检测结果包括:
29.将所述报文数据录入至所述设备数据库中,得到所述设备数据库的响应信息;
30.对所述响应信息进行语义分析,得到语义结果;
31.检测所述语义结果中是否包含配置信息;
32.若所述语义结果中包含所述配置信息,则将所述检测结果确定为所述设备数据库已存满;
33.若所述语义结果中不包含所述配置信息,统计所述设备数据库中的存储量;
34.若所述存储量大于预设量,则将所述检测结果确定为所述设备数据库已存满。
35.根据本发明优选实施例,所述将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果包括:
36.将所述报文数据及所述第一存储信息确定为目标信息,所述目标信息中存储有数据键及与该数据键对应的数据值;
37.检测所述第二存储信息中是否包含所述数据键;
38.若所述第二存储信息中不包含所述数据键,则将所述比较结果确定为第一结果;及/或
39.若所述第二存储信息中包含所述数据键,从所述第二存储信息中提取与所述数据键对应的信息作为待比较信息,并将所述数据值与所述待比较信息进行比较;
40.若所述数据值与所述待比较信息不同,则将所述比较结果确定为第二结果。
41.根据本发明优选实施例,所述根据所述比较结果更新所述第二存储信息,得到录制信息包括:
42.提取所述比较结果为所述第一结果的数据键作为待增键,并将所述待增键及所述待增键所对应的数据值写入所述数据库服务器中,得到所述录制信息;及/或
43.提取所述比较结果为所述第二结果的数据键作为目标键,并提取所述目标键所对应的数据值作为目标值,从所述第二存储信息中获取与所述目标键对应的键值作为初始值,并合并所述目标值及所述初始值,得到更新值,将所述更新值替换所述初始值,得到所述录制信息。
44.另一方面,本发明还提出一种请求录制装置,运行于电子设备,所述电子设备分别与多个处理服务器及数据库服务器相通信,所述电子设备中包括设备数据库,所述请求录制装置包括:
45.生成单元,用于当接收到请求录制指令时,根据所述请求录制指令生成匹配表达
式;
46.获取单元,用于获取所述多个处理服务器中的报文请求;
47.筛选单元,用于根据所述匹配表达式对所述报文请求进行筛选,得到目标报文;
48.提取单元,用于根据所述目标报文的对象来源提取报文数据;
49.检测单元,用于检测所述设备数据库的存储情况,得到检测结果;
50.所述获取单元,还用于若所述检测结果为预设结果,获取所述设备数据库中的第一存储信息,并获取所述数据库服务器中的第二存储信息;
51.比较单元,用于将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果;
52.更新单元,用于根据所述比较结果更新所述第二存储信息,得到录制信息。
53.另一方面,本发明还提出一种电子设备,所述电子设备包括:
54.存储器,存储计算机可读指令;及
55.处理器,执行所述存储器中存储的计算机可读指令以实现所述请求录制方法。
56.另一方面,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,所述计算机可读指令被电子设备中的处理器执行以实现所述请求录制方法。
57.由以上技术方案可以看出,本发明通过所述匹配表达式能够对所述多个处理服务器中的报文请求进行筛选,由于无需在相应接口前设置拦截窗口,因此能够快速的获取到需要进行录制的目标报文,提高测试请求的获取效率,同时,由于所述匹配表达式选取出的目标报文中包含了正常请求及异常请求,因此,能够录制到正常请求用于测试,确保后续系统的测试性能,进而通过对所述设备数据库的检测,能够及时更新所述数据库服务器中的第二存储信息,避免所述录制信息中存在冗余请求。
附图说明
58.图1是本发明请求录制方法的较佳实施例的流程图。
59.图2是本发明请求录制装置的较佳实施例的功能模块图。
60.图3是本发明实现请求录制方法的较佳实施例的电子设备的结构示意图。
具体实施方式
61.为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
62.如图1所示,是本发明请求录制方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
63.所述请求录制方法可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
64.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机
视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
65.所述请求录制方法应用于一个或者多个电子设备中,所述电子设备是一种能够按照事先设定或存储的计算机可读指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(application specific integrated circuit,asic)、可编程门阵列(field-programmable gate array,fpga)、数字信号处理器(digital signal processor,dsp)、嵌入式设备等。
66.所述电子设备可以是任何一种可与用户进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(personal digital assistant,pda)、游戏机、交互式网络电视(internet protocol television,iptv)、智能穿戴式设备等。
67.所述电子设备可以包括网络设备和/或用户设备。其中,所述网络设备包括,但不限于单个网络电子设备、多个网络电子设备组成的电子设备组或基于云计算(cloud computing)的由大量主机或网络电子设备构成的云。
68.所述电子设备所处的网络包括,但不限于:互联网、广域网、城域网、局域网、虚拟专用网络(virtual private network,vpn)等。
69.所述电子设备分别与多个处理服务器及数据库服务器相通信,所述电子设备中包括设备数据库。
70.s10,当接收到请求录制指令时,根据所述请求录制指令生成匹配表达式。
71.在本发明的至少一个实施例中,所述请求录制指令可以在有测试需求产生时触发生成的。所述请求录制指令携带的信息包括,但不限于:需要进行测试的接口所对应的字符串。
72.所述匹配表达式用于筛选出需要进行测试的请求。
73.在本发明的至少一个实施例中,所述电子设备根据所述请求录制指令生成匹配表达式包括:
74.提取所述请求录制指令中的特征字符串;
75.定位所述电子设备的显示界面;
76.从所述显示界面中捕获用户的输入参数;
77.将所述特征字符串及所述输入参数写入预设指令中,得到所述匹配表达式。
78.其中,所述特征字符串可以是用户根据录制接口预先设定好的字符串。
79.所述显示界面中包含多个按键及输入空格,所述显示界面不仅用于显示页面的布局,所述显示界面还用于用户对具体请求的录制控制。
80.所述输入参数可以是用于根据需求设定的接口参数。
81.例如,所述特征字符串可以是getwin.do,所述输入参数可以是a=1&b=2,所述预设指令为特征前缀+?+参数,则所述匹配表达式为getwin.do?a=1&b=2。
82.通过所述特征字符串能够对同一接口中的请求进行统一录制,避免存在请求遗漏录制,进而通过所述输入参数能够控制录制的具体请求,避免录制多余的请求,从而不利于后续系统的测试。
83.s11,获取所述多个处理服务器中的报文请求。
84.在本发明的至少一个实施例中,所述报文请求是指经所述多个处理服务器处理的
请求。具体地,所述报文请求可以由所述多个处理服务器生成,所述报文请求也可以由所述多个处理服务器转发。
85.s12,根据所述匹配表达式对所述报文请求进行筛选,得到目标报文。
86.在本发明的至少一个实施例中,所述目标报文是指与测试需求相关的请求,其中,所述测试需求可以是指需要进行测试的接口或者系统。
87.在本发明的至少一个实施例中,所述电子设备根据所述匹配表达式对所述报文请求进行筛选,得到目标报文包括:
88.提取所述报文请求中的请求对象;
89.将与所述特征字符串相同的请求对象所在的报文请求确定为初筛报文;
90.检测所述初筛报文中是否包含所述输入参数;
91.若所述初筛报文中包含所述输入参数,则将该初筛报文确定为所述目标报文。
92.其中,所述请求对象可以是所述报文请求的请求地址所对应的字符串信息。
93.通过所述匹配表达式中的特征字符串及输入参数能够准确的从所述报文请求中筛选出需要进行录制的目标报文。
94.s13,根据所述目标报文的对象来源提取报文数据。
95.在本发明的至少一个实施例中,所述报文数据是指所述目标报文中携带的核心数据信息。例如,所述报文数据可以是某个字段所对应的数据信息。
96.在本发明的至少一个实施例中,所述电子设备根据所述目标报文的对象来源提取报文数据包括:
97.检测所述对象来源的对象类型;
98.若所述对象类型为转发型服务器,根据预设标签解析所述目标报文,得到所述报文数据;或者
99.若所述对象类型为本地型服务器,将所述目标报文确定为所述报文数据。
100.其中,所述对象类型是指所述对象来源所属的具体类型,所述对象类型包括所述转发型服务器及所述本地型服务器。
101.所述转发型服务器是指负责将请求转发至访问终端的服务器。
102.所述本地型服务器是指访问终端,所述本地型服务器用于处理请求以得到请求的响应结果。
103.所述预设标签用于指示所述目标报文中的报文字符串。
104.通过对所述对象来源进行检测,能够根据不同方式准确的从所述目标报文中提取出所述报文数据。
105.s14,检测所述设备数据库的存储情况,得到检测结果。
106.在本发明的至少一个实施例中,所述检测结果包括所述设备数据库已存满,所述检测结果还包括所述设备数据库未存满。
107.在本发明的至少一个实施例中,所述电子设备检测所述设备数据库的存储情况,得到检测结果包括:
108.将所述报文数据录入至所述设备数据库中,得到所述设备数据库的响应信息;
109.对所述响应信息进行语义分析,得到语义结果;
110.检测所述语义结果中是否包含配置信息;
111.若所述语义结果中包含所述配置信息,则将所述检测结果确定为所述设备数据库已存满;
112.若所述语义结果中不包含所述配置信息,统计所述设备数据库中的存储量;
113.若所述存储量大于预设量,则将所述检测结果确定为所述设备数据库已存满。
114.其中,所述响应信息是指所述设备数据库针对所述报文数据录入至所述设备数据库后所作出的响应。例如,所述响应信息可以是数据已成功录入,所述响应信息也可以是quotaexceedederror,所述响应信息还可以是try catch。
115.所述语义结果是指能够表示所述响应信息语义的信息。
116.所述配置信息用于表征所述报文数据无法录入至所述设备数据库中,例如,所述配置信息可以是录入成功,所述配置信息也可以是录入失败。
117.所述预设量可以根据需求设定,例如,所述预设量可以是所述设备数据库的总内存的90%,具体来说,所述总内存为100m,则所述预设量可以为90m。
118.通过上述实施方式,在所述语义结果中不包含所述配置信息时,能够进一步将所述存储量与所述预设量进行比较,进一步提高了所述检测结果的准确性。
119.本实施例中,在所述语义结果中不包含所述配置信息时,说明在所述报文数据录入所述设备数据库之前,所述设备数据库没有存满的,当所述报文数据存入所述设备数据库后,结合所述存储量与所述预设量的能够准确的确定出所述设备数据库中的存储情况。
120.s15,若所述检测结果为预设结果,获取所述设备数据库中的第一存储信息,并获取所述数据库服务器中的第二存储信息。
121.在本发明的至少一个实施例中,所述预设结果是指所述设备数据库已存满。
122.所述第一存储信息是指所述设备数据库中的所有信息,所述第二存储信息是指所述数据库服务器中的所有信息。
123.本实施例中,当所述设备数据库已存满时,将所述第一存储信息迁移至所述数据库服务器中,以便后续请求能够直接存储至所述设备数据库中,提高存储效率。
124.在本发明的至少一个实施例中,所述方法还包括:
125.若所述检测结果不为所述预设结果,则将所述报文数据直接录入至所述设备数据库中。
126.s16,将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果。
127.在本发明的至少一个实施例中,所述比较结果包括第一结果、第二结果及第三结果。其中,所述第一结果是指所述数据库服务器中不存在所述数据键及与该数据键对应的数据值,所述第二结果是指所述数据库服务器中存在所述数据键且不存在与该数据键对应的数据值,所述第三结果是指所述数据库服务器中存在所述数据键及与该数据键对应的数据值。
128.在本发明的至少一个实施例中,所述电子设备将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果包括:
129.将所述报文数据及所述第一存储信息确定为目标信息,所述目标信息中存储有数据键及与该数据键对应的数据值;
130.检测所述第二存储信息中是否包含所述数据键;
131.若所述第二存储信息中不包含所述数据键,则将所述比较结果确定为第一结果;及/或
132.若所述第二存储信息中包含所述数据键,从所述第二存储信息中提取与所述数据键对应的信息作为待比较信息,并将所述数据值与所述待比较信息进行比较;
133.若所述数据值与所述待比较信息不同,则将所述比较结果确定为第二结果。
134.通过在比较所述数据键后对所述数据值进行比较,能够避免不同数据键中存在相同的数据值,从而提高所述比较结果的准确性。
135.在本发明的至少一个实施例中,若所述数据值与所述待比较信息相同,则将所述比较结果确定为第三结果。
136.s17,根据所述比较结果更新所述第二存储信息,得到录制信息。
137.在本发明的至少一个实施例中,所述录制信息可以用于系统的性能测试。
138.需要强调的是,为进一步保证上述录制信息的私密和安全性,上述录制信息还可以存储于一区块链的节点中。
139.在本发明的至少一个实施例中,所述电子设备根据所述比较结果更新所述第二存储信息,得到录制信息包括:
140.提取所述比较结果为所述第一结果的数据键作为待增键,并将所述待增键及所述待增键所对应的数据值写入所述数据库服务器中,得到所述录制信息;及/或
141.提取所述比较结果为所述第二结果的数据键作为目标键,并提取所述目标键所对应的数据值作为目标值,从所述第二存储信息中获取与所述目标键对应的键值作为初始值,并合并所述目标值及所述初始值,得到更新值,将所述更新值替换所述初始值,得到所述录制信息。
142.通过上述实施方式,能够避免所述录制信息中存在重复请求,不仅能够节约资源的占用空间,还能够避免相同的请求用于测试,从而造成系统测试时的资源占用。在本发明的至少一个实施例中,所述方法还包括:
143.基于所述录制信息对测试系统进行测试。由以上技术方案可以看出,本发明通过所述匹配表达式能够对所述多个处理服务器中的报文请求进行筛选,由于无需在相应接口前设置拦截窗口,因此能够快速的获取到需要进行录制的目标报文,提高测试请求的获取效率,同时,由于所述匹配表达式选取出的目标报文中包含了正常请求及异常请求,因此,能够录制到正常请求用于测试,确保后续系统的测试性能,进而通过对所述设备数据库的检测,能够及时更新所述数据库服务器中的第二存储信息,避免所述录制信息中存在冗余请求。
144.如图2所示,是本发明请求录制装置的较佳实施例的功能模块图。所述请求录制装置11包括生成单元110、获取单元111、筛选单元112、提取单元113、检测单元114、比较单元115、更新单元116、录入单元117及测试单元118。本发明所称的模块/单元是指一种能够被处理器13所获取,并且能够完成固定功能的一系列计算机可读指令段,其存储在存储器12中。在本实施例中,关于各模块/单元的功能将在后续的实施例中详述。
145.当接收到请求录制指令时,生成单元110根据所述请求录制指令生成匹配表达式。
146.在本发明的至少一个实施例中,所述请求录制指令可以在有测试需求产生时触发生成的。所述请求录制指令携带的信息包括,但不限于:需要进行测试的接口所对应的字符
串。
147.所述匹配表达式用于筛选出需要进行测试的请求。
148.在本发明的至少一个实施例中,所述生成单元110根据所述请求录制指令生成匹配表达式包括:
149.提取所述请求录制指令中的特征字符串;
150.定位所述电子设备的显示界面;
151.从所述显示界面中捕获用户的输入参数;
152.将所述特征字符串及所述输入参数写入预设指令中,得到所述匹配表达式。
153.其中,所述特征字符串可以是用户根据录制接口预先设定好的字符串。
154.所述显示界面中包含多个按键及输入空格,所述显示界面不仅用于显示页面的布局,所述显示界面还用于用户对具体请求的录制控制。
155.所述输入参数可以是用于根据需求设定的接口参数。
156.例如,所述特征字符串可以是getwin.do,所述输入参数可以是a=1&b=2,所述预设指令为特征前缀+?+参数,则所述匹配表达式为getwin.do?a=1&b=2。
157.通过所述特征字符串能够对同一接口中的请求进行统一录制,避免存在请求遗漏录制,进而通过所述输入参数能够控制录制的具体请求,避免录制多余的请求,从而不利于后续系统的测试。
158.获取单元111获取所述多个处理服务器中的报文请求。
159.在本发明的至少一个实施例中,所述报文请求是指经所述多个处理服务器处理的请求。具体地,所述报文请求可以由所述多个处理服务器生成,所述报文请求也可以由所述多个处理服务器转发。
160.筛选单元112根据所述匹配表达式对所述报文请求进行筛选,得到目标报文。
161.在本发明的至少一个实施例中,所述目标报文是指与测试需求相关的请求,其中,所述测试需求可以是指需要进行测试的接口或者系统。
162.在本发明的至少一个实施例中,所述筛选单元112根据所述匹配表达式对所述报文请求进行筛选,得到目标报文包括:
163.提取所述报文请求中的请求对象;
164.将与所述特征字符串相同的请求对象所在的报文请求确定为初筛报文;
165.检测所述初筛报文中是否包含所述输入参数;
166.若所述初筛报文中包含所述输入参数,则将该初筛报文确定为所述目标报文。
167.其中,所述请求对象可以是所述报文请求的请求地址所对应的字符串信息。
168.通过所述匹配表达式中的特征字符串及输入参数能够准确的从所述报文请求中筛选出需要进行录制的目标报文。
169.提取单元113根据所述目标报文的对象来源提取报文数据。
170.在本发明的至少一个实施例中,所述报文数据是指所述目标报文中携带的核心数据信息。例如,所述报文数据可以是某个字段所对应的数据信息。
171.在本发明的至少一个实施例中,所述提取单元113根据所述目标报文的对象来源提取报文数据包括:
172.检测所述对象来源的对象类型;
173.若所述对象类型为转发型服务器,根据预设标签解析所述目标报文,得到所述报文数据;或者
174.若所述对象类型为本地型服务器,将所述目标报文确定为所述报文数据。
175.其中,所述对象类型是指所述对象来源所属的具体类型,所述对象类型包括所述转发型服务器及所述本地型服务器。
176.所述转发型服务器是指负责将请求转发至访问终端的服务器。
177.所述本地型服务器是指访问终端,所述本地型服务器用于处理请求以得到请求的响应结果。
178.所述预设标签用于指示所述目标报文中的报文字符串。
179.通过对所述对象来源进行检测,能够根据不同方式准确的从所述目标报文中提取出所述报文数据。
180.检测单元114检测所述设备数据库的存储情况,得到检测结果。
181.在本发明的至少一个实施例中,所述检测结果包括所述设备数据库已存满,所述检测结果还包括所述设备数据库未存满。
182.在本发明的至少一个实施例中,所述检测单元114检测所述设备数据库的存储情况,得到检测结果包括:
183.将所述报文数据录入至所述设备数据库中,得到所述设备数据库的响应信息;
184.对所述响应信息进行语义分析,得到语义结果;
185.检测所述语义结果中是否包含配置信息;
186.若所述语义结果中包含所述配置信息,则将所述检测结果确定为所述设备数据库已存满;
187.若所述语义结果中不包含所述配置信息,统计所述设备数据库中的存储量;
188.若所述存储量大于预设量,则将所述检测结果确定为所述设备数据库已存满。
189.其中,所述响应信息是指所述设备数据库针对所述报文数据录入至所述设备数据库后所作出的响应。例如,所述响应信息可以是数据已成功录入,所述响应信息也可以是quotaexceedederror,所述响应信息还可以是try catch。
190.所述语义结果是指能够表示所述响应信息语义的信息。
191.所述配置信息用于表征所述报文数据无法录入至所述设备数据库中,例如,所述配置信息可以是录入成功,所述配置信息也可以是录入失败。
192.所述预设量可以根据需求设定,例如,所述预设量可以是所述设备数据库的总内存的90%,具体来说,所述总内存为100m,则所述预设量可以为90m。
193.通过上述实施方式,在所述语义结果中不包含所述配置信息时,能够进一步将所述存储量与所述预设量进行比较,进一步提高了所述检测结果的准确性。
194.本实施例中,在所述语义结果中不包含所述配置信息时,说明在所述报文数据录入所述设备数据库之前,所述设备数据库没有存满的,当所述报文数据存入所述设备数据库后,结合所述存储量与所述预设量的能够准确的确定出所述设备数据库中的存储情况。
195.若所述检测结果为预设结果,所述获取单元111获取所述设备数据库中的第一存储信息,并获取所述数据库服务器中的第二存储信息。
196.在本发明的至少一个实施例中,所述预设结果是指所述设备数据库已存满。
197.所述第一存储信息是指所述设备数据库中的所有信息,所述第二存储信息是指所述数据库服务器中的所有信息。
198.本实施例中,当所述设备数据库已存满时,将所述第一存储信息迁移至所述数据库服务器中,以便后续请求能够直接存储至所述设备数据库中,提高存储效率。
199.在本发明的至少一个实施例中,若所述检测结果不为所述预设结果,录入单元117将所述报文数据直接录入至所述设备数据库中。
200.比较单元115将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果。
201.在本发明的至少一个实施例中,所述比较结果包括第一结果、第二结果及第三结果。其中,所述第一结果是指所述数据库服务器中不存在所述数据键及与该数据键对应的数据值,所述第二结果是指所述数据库服务器中存在所述数据键且不存在与该数据键对应的数据值,所述第三结果是指所述数据库服务器中存在所述数据键及与该数据键对应的数据值。
202.在本发明的至少一个实施例中,所述比较单元115将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果包括:
203.将所述报文数据及所述第一存储信息确定为目标信息,所述目标信息中存储有数据键及与该数据键对应的数据值;
204.检测所述第二存储信息中是否包含所述数据键;
205.若所述第二存储信息中不包含所述数据键,则将所述比较结果确定为第一结果;及/或
206.若所述第二存储信息中包含所述数据键,从所述第二存储信息中提取与所述数据键对应的信息作为待比较信息,并将所述数据值与所述待比较信息进行比较;
207.若所述数据值与所述待比较信息不同,则将所述比较结果确定为第二结果。
208.通过在比较所述数据键后对所述数据值进行比较,能够避免不同数据键中存在相同的数据值,从而提高所述比较结果的准确性。
209.在本发明的至少一个实施例中,若所述数据值与所述待比较信息相同,所述比较单元115则将所述比较结果确定为第三结果。
210.更新单元116根据所述比较结果更新所述第二存储信息,得到录制信息。
211.在本发明的至少一个实施例中,所述录制信息可以用于系统的性能测试。
212.需要强调的是,为进一步保证上述录制信息的私密和安全性,上述录制信息还可以存储于一区块链的节点中。
213.在本发明的至少一个实施例中,所述更新单元116根据所述比较结果更新所述第二存储信息,得到录制信息包括:
214.提取所述比较结果为所述第一结果的数据键作为待增键,并将所述待增键及所述待增键所对应的数据值写入所述数据库服务器中,得到所述录制信息;及/或
215.提取所述比较结果为所述第二结果的数据键作为目标键,并提取所述目标键所对应的数据值作为目标值,从所述第二存储信息中获取与所述目标键对应的键值作为初始值,并合并所述目标值及所述初始值,得到更新值,将所述更新值替换所述初始值,得到所述录制信息。
216.通过上述实施方式,能够避免所述录制信息中存在重复请求,不仅能够节约资源的占用空间,还能够避免相同的请求用于测试,从而造成系统测试时的资源占用。在本发明的至少一个实施例中,测试单元118基于所述录制信息对测试系统进行测试。
217.由以上技术方案可以看出,本发明通过所述匹配表达式能够对所述多个处理服务器中的报文请求进行筛选,由于无需在相应接口前设置拦截窗口,因此能够快速的获取到需要进行录制的目标报文,提高测试请求的获取效率,同时,由于所述匹配表达式选取出的目标报文中包含了正常请求及异常请求,因此,能够录制到正常请求用于测试,确保后续系统的测试性能,进而通过对所述设备数据库的检测,能够及时更新所述数据库服务器中的第二存储信息,避免所述录制信息中存在冗余请求。
218.如图3所示,是本发明实现请求录制方法的较佳实施例的电子设备的结构示意图。
219.在本发明的一个实施例中,所述电子设备1包括,但不限于,存储器12、处理器13,以及存储在所述存储器12中并可在所述处理器13上运行的计算机可读指令,例如请求录制程序。
220.本领域技术人员可以理解,所述示意图仅仅是电子设备1的示例,并不构成对电子设备1的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备1还可以包括输入输出设备、网络接入设备、总线等。
221.所述处理器13可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器13是所述电子设备1的运算核心和控制中心,利用各种接口和线路连接整个电子设备1的各个部分,及执行所述电子设备1的操作系统以及安装的各类应用程序、程序代码等。
222.示例性的,所述计算机可读指令可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器12中,并由所述处理器13执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该计算机可读指令段用于描述所述计算机可读指令在所述电子设备1中的执行过程。例如,所述计算机可读指令可以被分割成生成单元110、获取单元111、筛选单元112、提取单元113、检测单元114、比较单元115、更新单元116、录入单元117及测试单元118。
223.所述存储器12可用于存储所述计算机可读指令和/或模块,所述处理器13通过运行或执行存储在所述存储器12内的计算机可读指令和/或模块,以及调用存储在存储器12内的数据,实现所述电子设备1的各种功能。所述存储器12可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。存储器12可以包括非易失性和易失性存储器,例如:硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他存储器件。
224.所述存储器12可以是电子设备1的外部存储器和/或内部存储器。进一步地,所述
存储器12可以是具有实物形式的存储器,如内存条、tf卡(trans-flash card)等等。
225.所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机可读存储介质中,该计算机可读指令在被处理器执行时,可实现上述各个方法实施例的步骤。
226.其中,所述计算机可读指令包括计算机可读指令代码,所述计算机可读指令代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机可读指令代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)。
227.本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
228.结合图1,所述电子设备1中的所述存储器12存储计算机可读指令实现一种请求录制方法,应用于电子设备,所述电子设备分别与多个处理服务器及数据库服务器相通信,所述电子设备中包括设备数据库,所述处理器13可执行所述计算机可读指令从而实现:
229.当接收到请求录制指令时,根据所述请求录制指令生成匹配表达式;
230.获取所述多个处理服务器中的报文请求;
231.根据所述匹配表达式对所述报文请求进行筛选,得到目标报文;
232.根据所述目标报文的对象来源提取报文数据;
233.检测所述设备数据库的存储情况,得到检测结果;
234.若所述检测结果为预设结果,获取所述设备数据库中的第一存储信息,并获取所述数据库服务器中的第二存储信息;
235.将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果;
236.根据所述比较结果更新所述第二存储信息,得到录制信息。
237.具体地,所述处理器13对上述计算机可读指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
238.在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
239.所述计算机可读存储介质上存储有计算机可读指令,其中,所述计算机可读指令被处理器13执行时用以实现以下步骤:
240.当接收到请求录制指令时,根据所述请求录制指令生成匹配表达式;
241.获取所述多个处理服务器中的报文请求;
242.根据所述匹配表达式对所述报文请求进行筛选,得到目标报文;
243.根据所述目标报文的对象来源提取报文数据;
244.检测所述设备数据库的存储情况,得到检测结果;
245.若所述检测结果为预设结果,获取所述设备数据库中的第一存储信息,并获取所述数据库服务器中的第二存储信息;
246.将所述报文数据及所述第一存储信息与所述第二存储信息进行比较,得到比较结果;
247.根据所述比较结果更新所述第二存储信息,得到录制信息。
248.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
249.另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
250.因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
251.此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。所述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
252.最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1