测试方法及装置与流程

文档序号:14897513发布日期:2018-07-08 09:08阅读:289来源:国知局

本发明涉及计算机技术领域,具体而言,涉及一种测试方法及装置。



背景技术:

随着金融支付行业的飞速发展、支付技术的日新月异,金融支付终端形态、金融支付软件的实现方式及通讯协议报文格式千变万化,这对日常金融支付终端应用软件测试工作带来了巨大的困难。



技术实现要素:

本发明提供一种测试方法及装置。

本发明实施例提供一种测试方法,应用于测试平台,所述方法包括:

通过测试端口接收终端设备发送的待测试报文;

根据测试端口与解析规则的对应关系,获得与所述测试端口对应的目标解析规则,根据所述目标解析规则对所述待测试报文进行解析,获得解析结果;并基于所述解析结果判断所述待测试报文是否符合所述目标解析规则;

在所述待测试报文符合所述目标解析规则时,根据解析规则与交易平台的对应关系,获得与所述目标解析规则对应的目标交易平台,并将所述待测试报文发送给所述目标交易平台;

接收所述目标交易平台针对所述待测试报文发送的回复信息,并根据所述回复信息生成所述待测试报文的测试结果。

可选地,在上述方法中,所述根据所述目标解析规则对所述待测试报文进行解析,获得解析结果;并基于所述解析结果判断所述待测试报文是否符合所述目标解析规则,包括:

判断所述待测试报文的报文总长度值是否正确;

在所述待测试报文的报文总长度值正确时,解析所述待测试报文是否包括传送协议数据单元、报文头及消息类型;

在所述待测试报文包括所述传送协议数据单元、所述报文头及所述消息类型时,判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域;在所述待测试报文包括所述强制域时,表示所述待测试报文符合所述目标解析规则。

可选地,在上述方法中,所述判断所述待测试报文的报文总长度值是否正确,包括:

通过解析所述待测试报文获得所述待测试报文的报文总长度值;

将所述报文总长度值与所述目标解析规则中的目标报文总长度值进行比对;其中,在所述报文总长度值与所述目标总长度值相同时,表示所述报文总长度值正确。

可选地,在上述方法中,所述判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域,包括:

对所述待测试报文进行解析,得到位图;

根据所述位图及所述目标解析规则中的域属性表获得所述待测试报文包括的域;

根据所述交易配置表及所述待测试报文包括的域判断所述待测试报文是否包括所述交易配置表中的强制域。

可选地,在上述方法中,在通过测试端口接收终端设备发送的待测试报文之前,所述方法还包括:

根据每个交易平台对应的报文协议在所述测试平台的案例库中选取案例以组成案例集,并根据所述案例集生成解析规则,其中,不同的报文协议对应不同的解析规则;

配置并保存每个测试端口与至少一个解析规则中一解析规则的对应关系及每个解析规则与至少一个交易平台中一交易平台的对应关系,其中,每个测试端口接收与对应的解析规则匹配的报文。

本发明实施例还提供一种测试装置,应用于测试平台,所述装置包括:

接收模块,用于通过测试端口接收终端设备发送的待测试报文;

判断模块,用于根据所述测试端口与解析规则的对应关系,获得与所述测试端口对应的目标解析规则,根据所述目标解析规则对所述待测试报文进行解析,获得解析结果;并基于所述解析结果判断所述待测试报文是否符合所述目标解析规则;

发送模块,用于在所述待测试报文符合所述目标解析规则时,根据所述解析规则与交易平台的对应关系,获得与所述目标解析规则对应的目标交易平台,并将所述待测试报文发送给所述目标交易平台;

报告生成模块,用于接收所述目标交易平台针对所述待测试报文发送的回复信息,并根据所述回复信息生成所述待测试报文的测试结果。

可选地,在上述装置中,所述判断模块包括:

长度判断子模块,用于判断所述待测试报文的报文总长度值是否正确;

解析子模块,用于在所述待测试报文的报文总长度值正确时,解析所述待测试报文是否包括传送协议数据单元、报文头及消息类型;

强制域判断子模块,用于在所述待测试报文包括所述传送协议数据单元、所述报文头及所述消息类型时,判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域;在所述待测试报文包括所述强制域时,表示所述待测试报文符合所述目标解析规则。

可选地,在上述装置中,所述长度判断子模块判断所述待测试报文的报文总长度值是否正确的方式包括:

通过解析所述待测试报文获得所述待测试报文的报文总长度值;

将所述报文总长度值与所述目标解析规则中的目标报文总长度值进行比对;其中,在所述报文总长度值与所述目标总长度值相同时,表示所述报文总长度值正确。

可选地,在上述装置中,所述强制域判断子模块判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域的方式包括:

对所述待测试报文进行解析,得到位图;

根据所述位图及所述目标解析规则中的域属性表获得所述待测试报文包括的域;

根据所述交易配置表及所述待测试报文包括的域判断所述待测试报文是否包括所述交易配置表中的强制域。

可选地,在上述装置中,所述装置还包括:

解析规则生成模块,用于根据每个交易平台对应的报文协议在所述测试平台的案例库中选取案例以组成案例集,并根据所述案例集生成解析规则,其中,不同的报文协议对应不同的解析规则;

配置模块,用于配置并保存每个测试端口与至少一个解析规则中一解析规则的对应关系及每个解析规则与至少一个交易平台中一交易平台的对应关系,其中,每个测试端口接收与对应的解析规则匹配的报文。

相对于现有技术而言,本发明实施例提供的一个和/或多个技术方案具有以下有益效果:

本发明实施例提供一种测试方法及装置。所述方法应用于测试平台。在通过测试端口接收终端设备发送的待测试报文后,根据测试端口与解析规则的对应关系,获得与所述测试端口对应的目标解析规则。根据所述目标解析规则对所述待测试报文进行解析,得到解析结果,并根据所述解析结果及所述目标解析规则判断所述待测试报文是否符合所述目标解析规则。在所述待测试报文符合所述目标解析规则时,根据解析规则与交易平台的对应关系,获得与所述目标解析规则对应的目标交易平台,并将所述待测试报文发送给所述目标交易平台。在接收到所述目标交易平台针对所述待测试报文的回复信息后,根据所述回复信息生成所述待测试报文的测试结果。由此,可清楚知道,在本发明实施例中,基于目标解析规则能够对待测试报文进行自动化判别,以识别该待测试报文的报文协议,并在判别后将待测试报文发送给与报文协议对应的交易平台以进行功能测试,即在整个测试过程中,本发明实施例的技术方案都不需要人参与操作,都是自动实现的,进而有效消除人为因素在金融交易测试中引入的错误,同时相较于人为测试,本发明实施例中的技术方案由于是自动测试,还提升了测试效率。并且,通过自动化判别,可以将所述待测试报文转发至与所述待测试报文的报文协议对应的交易平台,避免报文转发错误。

为使发明的上述目的、特征和优点能更明显易懂,下文特举本发明较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例提供的支付系统的方框示意图。

图2是图1中测试平台的方框示意图。

图3是本发明实施例提供的测试方法的流程示意图之一。

图4是图3中步骤s130包括的子步骤的流程示意图。

图5是图4中子步骤s131包括的子步骤的流程示意图。

图6是图4中子步骤s133包括的子步骤的流程示意图。

图7是本发明实施例提供的测试方法的流程示意图之二。

图8是本发明实施例提供的测试装置的方框示意图。

图9是图8中判断模块的方框示意图。

图标:10-支付系统;100-测试平台;110-存储器;120-存储控制器;130-处理器;200-终端设备;300-交易平台;400-测试装置;412-解析规则生成模块;413-配置模块;420-接收模块;430-判断模块;431-长度判断子模块;432-解析子模块;433-强制域判断子模块;440-发送模块;450-报告生成模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本发明发明人提出本发明实施例中的技术方案之前,本领域普通技术人员知道的测试方法为:预先在终端设备设置所述终端设备对应的交易平台的参数,终端设备根据设置的参数及对应的交易平台的报文协议组将报文发送给对应的交易平台,然后,测试人员可以在对应的交易平台上进行人工测试。但是,经过本发明的发明人的研究发现,在现有技术中,由于测试中有测试人员参与,所以,会因人为因素引入测试错误,同时人为测试也大大增加了测试成本。

需要说明的是,以上现有技术方案所存在的缺陷,均是发明人在经过实践并仔细研究后得到的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应是发明人在本发明过程中对本现有技术作出的贡献。

请参照图1,图1是本发明实施例提供的支付系统10的方框示意图。支付系统10包括通信连接的测试平台100、至少一个终端设备200及至少一个交易平台300。其中,在实际使用过程中,测试平台100与交易平台300可通过有线方式或无线方式实现通信。测试平台100与终端设备200可以通过pstn(publicswitchedtelephonenetwork,公共交换电话网络)、internet、vpn(virtualprivatenetwork,虚拟专用网络)及ddn(digitaldatanetwork,数字数据网)等方式实现通信。

在本实施例中,基于支付系统10实现对终端设备200的测试过程如下,首先,终端设备200将待测试报文发送给测试平台100,在实际应用中,根据终端设备200与测试平台100的通信方式,终端设备200可以通过pstn将待测试报文发送给测试平台100;当然,终端设备200也可以通过ddn将待测试报文发送给测试平台100。当然,本领域技术人员还可以根据实际需求,选择通过vpn或internet等网络来发送待测试报文。

然后,测试平台100对待测试报文进行自动化判别,并在判别结果符合要求时将待测试报文发送给对应的交易平台300。交易平台300基于接收的所述待测试报文向测试平台100发送回复信息。测试平台100基于判别结果及所述回复信息生成所述待测试报文的测试结果,完成对所述待测试报文的测试。

请参照图2,图2是图1中测试平台100的方框示意图。测试平台100可以是,但不限于,独立服务器、由多个独立服务器组成的集群服务器等。测试平台100可以包括:存储器110、存储控制器120及处理器130。

存储器110、存储控制器120及处理器130各元件之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器110中存储有测试装置400,测试装置400包括至少一个可以软件或固件(firmware)的形式存储于存储器110中的软件功能模块。处理器130通过运行存储在存储器110内的软件程序以及模块,如本发明实施例中的测试装置400,从而执行各种功能应用以及数据处理,即实现本发明实施例中的测试方法。

其中,存储器110可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器110用于存储程序,处理器130在接收到执行指令后,执行所述程序。处理器130以及其他可能的组件对存储器110的访问可在存储控制器120的控制下进行。

处理器130可能是一种集成电路芯片,具有信号的处理能力。上述的处理器130可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等。还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

可以理解,图2所示的结构仅为示意,测试平台100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。

终端设备200可以是,但不限于,pos(pointofsale,销售终端)机。pos机可以是终端厂商的厂商pos,也可以是分公司的二级地市pos,还可以是总公司的分公司pos。

交易平台300可以是,但不限于,tpos平台、预付卡平台等。交易平台300用于对接收的交易报文(即待测试报文)进行响应,以便完成金融交易。

请参照图3,图3是本发明实施例提供的测试方法的流程示意图之一。所述方法应用于测试平台100。下面对所述测试方法的具体流程进行详细阐述。

步骤s120,通过测试端口接收终端设备200发送的待测试报文。

在本实施例中,设置在终端设备200与交易平台300之间的测试平台100包括至少一个测试端口。测试平台100通过开启的测试端口接收不同形态金融终端发送的不同通信协议报文。

在本实施例中的实施方式中,不同的终端设备200发送的待测试报文不同,比如,有的终端设备200发送8583协议报文,有的终端设备200发送tpos指令协议报文,还有的终端设备200发送jason协议报文。不同的终端设备200对应的交易平台300不同,因此,预先在终端设备200配置该终端设备200与测试端口的对应关系,从而使得不同的终端设备200将报文发送给对应的测试端口。其中,测试端口与交易平台300间可以有对应关系,以便报文被发送给对应的交易平台300。

步骤s130,根据测试端口与解析规则的对应关系,获得与所述测试端口对应的目标解析规则,根据所述目标解析规则对所述待测试报文进行解析,获得解析结果;并基于所述解析结果判断所述待测试报文是否符合所述目标解析规则。

在本实施例中,测试平台100中预先配置有测试端口与解析规则的对应关系。测试平台100在接收待测试报文后,根据测试端口与解析规则的对应关系,获得与接收所述待测试报文的所述测试端口对应的解析规则,并将该解析规则作为目标解析规则。

请参照图4,图4是图3中步骤s130包括的子步骤的流程示意图。步骤s130可以包括子步骤s131、子步骤s132及子步骤s133。

子步骤s131,判断所述待测试报文的报文总长度值是否正确。

请参照图5,图5是图4中子步骤s131包括的子步骤的流程示意图。子步骤s131可以包括子步骤s1311及子步骤s1312。

子步骤s1311,通过解析所述待测试报文获得所述待测试报文的报文总长度值。

子步骤s1312,将所述报文总长度值与所述目标解析规则中的目标报文总长度值进行比对。

在本实施例中,所述目标解析规则包括目标报文总长度值。测试平台100通过解析所述待测试报文,获得所述待测试报文的报文总长度值,并将其与所述目标报文总长度值进行比较。若所述报文总长度值与所述目标报文总长度值相同,表示所述报文总长度值正确,可对所述待测试报文进行下一步解析。若所述报文总长度值与所述目标报文总长度值不同,表示所述待测试报文的位数多了或少了,不符合所述目标解析规则,对所述待测试报文的解析可以到此结束,并根据该解析结果及所述待测试报文等生成针对所述待测试报文的测试结果。

子步骤s132,在所述待测试报文的报文总长度值正确时,解析所述待测试报文是否包括传送协议数据单元、报文头及消息类型。

在本实施例中,在所述报文总长度值正确时,解析所述待测试报文是否包括传送协议数据单元(transportprotocoldataunit,tpdu)、报文头及消息类型这三个结构。在待测试报文包括上述三个结构的情况下,对应的交易平台300才能通过解析获得所述待测试报文的内容,从而对待测试报文进行响应,以便完成金融交易。

在本实施例的实施方式中,若所述待测试报文不同时包括所述协议数据单元、所述报文头及所述消息类型,表示所述待测试报文不符合所述目标解析规则,对所述待测试报文的解析可以到此结束,并根据目前得到的解析结果及所述待测试报文等生成针对所述待测试报文的测试结果。

子步骤s133,在所述待测试报文包括所述传送协议数据单元、所述报文头及所述消息类型时,判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域。

请参照图6,图6是图4中子步骤s133包括的子步骤的流程示意图。子步骤s133可以包括子步骤s1331、子步骤s1332及子步骤s1333。

子步骤s1331,对所述待测试报文进行解析,得到位图。

子步骤s1332,根据所述位图及所述目标解析规则中的域属性表获得所述待测试报文包括的域。

子步骤s1333,根据所述交易配置表及所述待测试报文包括的域判断所述待测试报文是否包括所述交易配置表中的强制域。

在本实施例中,所述待测试报文包括位图,所述目标解析规则中的域属性表包括了位图与域的关系。测试平台100通过解析所述待测试报文获得所述待测试报文中的位图,并根据所述位图及所述目标解析规则中的域属性表获得所述待测试报文包括的所有域。其中,所述待测试报文包括的所有域中,有些域是强制域(即,必须包括的域),有些域不是强制域(即,可包括可不包括的域)。然后将所述交易配置表中的所有强制域与所述待测试报文包括的所有域进行比对,从而判断所述待测试报文是否包括了应该包括的域,也就是说,是否包括了所述交易配置表中的强制域。其中,所述交易配置表中包括了至少一个强制域。

若所述待测试报文完全包括了交易配置表中的所述强制域,表示所述待测试报文符合所述目标解析规则,所述待测试报文的报文协议为与所述目标解析规则对应的报文协议,由此,识别出所述待测试报文的报文协议,对所述待测试报文的解析可以到此结束。若所述待测试报文没有完全包括所述交易配置表中的所述强制域,则根据目前得到的解析结果及所述待测试报文等生成所述待测试报文的测试结果。

步骤s140,在所述待测试报文符合所述目标解析规则时,根据解析规则与交易平台300的对应关系,获得与所述目标解析规则对应的目标交易平台300,并将所述待测试报文发送给所述目标交易平台300。

在本实施例中,测试平台100中还预先配置有根据协议报文与交易平台300的对应关系设置的解析规则与交易平台300的对应关系。在所述待测试报文符合所述目标规则时,测试平台100根据解析规则与交易平台300的对应关系及所述目标解析规则获得一交易平台300,获得的交易平台300即为所述目标交易平台300。测试平台100在得到所述目标交易平台300后,将所述待测试报文发送给所述目标交易平台300。

步骤s150,接收所述目标交易平台300针对所述待测试报文发送的回复信息,并根据所述回复信息生成所述待测试报文的测试结果。

在本实施例中,若所述目标交易平台300可以通过解析获得所述待测试报文的具体内容,表示所述待测试报文确实与所述目标交易平台300对应,所述目标解析规则设置合理,所述目标交易平台300则在对所述待测试报文解析后,将针对所述待测试报文将响应报文(即回复信息)发送给测试平台100,以便完成与该待测试报文对应的金融交易,同时完成了对所述待测试报文的功能测试。测试平台100基于对所述待测试报文解析得到的解析结果、所述待测试报文及所述响应报文等生成针对所述待测试报文的测试结果。

若所述目标交易平台300不能通过解析获得所述待测试报文的具体内容,表示所述待测试报文被发送至错误的交易平台300。接收该待测试报文的交易平台300可以针对所述待测试报文向测试平台100发送用于提示报文发送错误的回复信息。测试平台100则根据报文发送错误的回复信息、所述待测试报文及得到的解析结果等生成针对所述待测试报文的测试结果。

在本实施例的实施方式中,还可以设置测试平台100的工作模式。其中,所述工作模块可以包括透传模式及挡板模式。

在测试平台100工作在透传模式下时,工作方式如上文所述,在所述待测试报文满足所述目标解析规则时,将所述待测试报文发送给所述目标交易平台300,并在接收所述目标交易平台300发送的回复信息后生成针对所述待测试报文的测试结果。

在由于交易平台300出现问题(比如,连接断开)无法受理所述终端设备200的交易报文,测试平台100工作在挡板模式下时,即使所述待测试报文不符合所述目标解析规则,测试平台100依然会将所述待测试报文发送给所述目标交易平台300,或是测试平台100模拟所述目标交易平台300给出回复信息,从而生成针对所述待测试报文的测试结果。

请参照图7,图7是本发明实施例提供的测试方法的流程示意图之二。在步骤s120之前,所述方法还可以包括步骤s112及步骤s113。

步骤s112,根据每个交易平台300对应的报文协议在测试平台100的案例库中选取案例以组成案例集,并根据所述案例集生成解析规则。

在本实施例中,测试平台100中存储有一案例库。所述案例库中包括与不同协议报文对应的案例。可以针对不同的交易平台300从所述案例库中选出对应的至少一个案例,将筛选出的案例组成与不同交易平台300对应的不同的案例集。然后根据所述案例集生成与所述交易平台300对应的解析规则。其中,不同的报文协议对应不同的解析规则,不同的交易平台300仅能解析对应的报文协议。

步骤s113,配置并保存每个测试端口与至少一个解析规则中一解析规则的对应关系及每个解析规则与至少一个交易平台300中一交易平台300的对应关系。

在本实施例中,配置测试平台100的测试端口与所述解析规则的对应关系,并根据每个解析规则对应的报文协议配置解析规则与交易平台300的对应关系。基于测试端口与解析规则的对应关系及终端设备200对应的报文协议,在终端设备200中设置测试平台100的ip地址及端口号,从而使得测试平台100通过与该终端设备200的协议报文对应的测试端口接收报文,并在接收报文后,可以基于与测试端口对应的目标解析规则对报文进行解析。其中,每个测试端口接收与对应的解析规则匹配的报文。由此,确保测试平台100可以接收不同终端设备200发送的不同报文,并将报文转发给正确的对应的可完成交易的交易平台300。

比如,终端设备a发送的协议报文可以被交易平台1识别。测试平台100通过测试端口1接收终端设备a发送的报文,基于与测试端口1对应的目标解析规则对报文进行解析。其中,该目标解析规则对应该报文的报文协议,因此,可以通过该目标解析规则对该报文进行解析。在报文符合目标解析规则的基础上,则将报文发送给与目标解析规则对应的交易平台1。

通过上述步骤可以筛选案例及设置解析规则,进而对金融支付终端(即终端设备200)发送的不同协议的交易报文进行自动解析和判别,并在交易报文符合对应的解析规则时,将交易报文发送给对应的交易平台300,并根据交易平台300的回复信息生成针对该交易报文的测试结果。由此,完成金融支付终端应用软件的自动化测试。

在本实施例的实施方式中,工作人员可以通过可视化界面根据需求从案例库中选择案例以组成案例集,还可以对解析规则进行人工配置,使得解析规则可以灵活适应不同形态终端设备200、不同支付业务需求软件、不同通信协议报文的功能测试要求。

在本实施例的实施方式中,测试平台100还可以包括一管理功能。在该功能中,可以对能够操作测试平台100的用户进行个人资料修改、密码修改、权限查询、用户增删改查、导出、权限管理及项目管理。其中,权限管理包括:角色的增删改查、权限的增删改查(若有角色使用了该权限,该权限则不能删除)、为不同的角色分配不同的权限、为用户分配角色(用户分配了该角色,就有了该角色的所有权限)。项目管理可以包括:填写测试pos对应的信息、对案例集进行增删改查、对解析规则进行编辑等。其中,所述测试结果可以包括填写的测试pos对应的信息。

请参照图8,图8是本发明实施例提供的测试装置400的方框示意图。测试装置400应用于测试平台100。测试装置400可以包括接收模块420、判断模块430、发送模块440及报告生成模块450。

接收模块420,用于通过测试端口接收终端设备200发送的待测试报文。

在本实施例中,接收模块420用于执行图3中的步骤s120,关于接收模块420的具体描述可以参照图3中步骤s120的描述。

判断模块430,用于根据所述测试端口与解析规则的对应关系,获得与所述测试端口对应的目标解析规则,根据所述目标解析规则对所述待测试报文进行解析,获得解析结果;并基于所述解析结果判断所述待测试报文是否符合所述目标解析规则。

请参照图9,图9是图8中判断模块430的方框示意图。判断模块430可以包括长度判断子模块431、解析子模块432及强制域判断子模块433。

长度判断子模块431,用于判断所述待测试报文的报文总长度值是否正确。

长度判断子模块431判断所述待测试报文的报文总长度值是否正确的方式包括:

通过解析所述待测试报文获得所述待测试报文的报文总长度值;

将所述报文总长度值与所述目标解析规则中的目标报文总长度值进行比对;其中,在所述报文总长度值与所述目标总长度值相同时,表示所述报文总长度值正确。

解析子模块432,用于在所述待测试报文的报文总长度值正确时,解析所述待测试报文是否包括传送协议数据单元、报文头及消息类型。

强制域判断子模块433,用于在所述待测试报文包括所述传送协议数据单元、所述报文头及所述消息类型时,判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域;在所述待测试报文包括所述强制域时,表示所述待测试报文符合所述目标解析规则。

强制域判断子模块433判断所述待测试报文是否包括所述目标解析规则中交易配置表中的强制域的方式包括:

对所述待测试报文进行解析,得到位图;

根据所述位图及所述目标解析规则中的域属性表获得所述待测试报文包括的域;

根据所述交易配置表及所述待测试报文包括的域判断所述待测试报文是否包括所述交易配置表中的强制域。

在本实施例中,判断模块430用于执行图3中的步骤s130,关于判断模块430的具体描述可以参照图3中步骤s130的描述。

发送模块440,用于在所述待测试报文符合所述目标解析规则时,根据所述解析规则与交易平台300的对应关系,获得与所述目标解析规则对应的目标交易平台300,并将所述待测试报文发送给所述目标交易平台300。

在本实施例中,所述发送模块440用于执行图3中的步骤s140,关于所述发送模块440的具体描述可以参照图3中步骤s140的描述。

报告生成模块450,用于接收目标交易平台300针对所述待测试报文发送的回复信息,并根据所述回复信息生成所述待测试报文的测试结果。

在本实施例中,报告生成模块450用于执行图3中的步骤s150,关于报告生成模块450的具体描述可以参照图3中步骤s150的描述。

请再次参照图8,测试装置400还可以包括解析规则生成模块412及配置模块413。

解析规则生成模块412,用于根据每个交易平台300对应的报文协议在测试平台100的案例库中选取案例以组成案例集,并根据所述案例集生成解析规则,其中,不同的报文协议对应不同的解析规则。

在本实施例中,解析规则生成模块412用于执行图7中的步骤s112,关于解析规则生成模块412的具体描述可以参照图7中步骤s112的描述。

配置模块413,用于配置并保存每个测试端口与至少一个解析规则中一解析规则的对应关系及每个解析规则与至少一个交易平台300中一交易平台300的对应关系,其中,每个测试端口接收与对应的解析规则匹配的报文。

在本实施例中,配置模块413用于执行图7中的步骤s113,关于所述配置模块413的具体描述可以参照图7中步骤s113的描述。

综上所述,本发明实施例提供一种测试方法及装置。所述方法应用于测试平台。在通过测试端口接收终端设备发送的待测试报文后,根据测试端口与解析规则的对应关系,获得与所述测试端口对应的目标解析规则。根据所述目标解析规则对所述待测试报文进行解析,得到解析结果,并根据所述解析结果及所述目标解析规则判断所述待测试报文是否符合所述目标解析规则。在所述待测试报文符合所述目标解析规则时,根据解析规则与交易平台的对应关系,获得与所述目标解析规则对应的目标交易平台,并将所述待测试报文发送给所述目标交易平台。在接收到所述目标交易平台针对所述待测试报文的回复信息后,根据所述回复信息生成所述待测试报文的测试结果。由此,可清楚知道,在本发明实施例中,基于目标解析规则能够对待测试报文进行自动化判别,以识别该待测试报文的报文协议,并在判别后将待测试报文发送给与报文协议对应的交易平台以进行功能测试,即在整个测试过程中,本发明实施例的技术方案都不需要人参与操作,都是自动实现的,进而有效消除人为因素在金融交易测试中引入的错误,同时相较于人为测试,本发明实施例中的技术方案由于是自动测试,还提升了测试效率。

通过判断所述待测试报文的报文总长度值是否与所述目标解析规则中的目标报文总长度值相同,所述待测试报文是否包括协议数据单元、报文头及消息类型三个结构,及所述待测试报文是否包括所述目标解析规则中的强制域,从而对所述待测试报文的报文协议进行自动化判别,得到所述待测试报文的报文协议,进而将所述待测试报文发送给与所述报文协议对应的目标交易平台。

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

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

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1