ATMP系统的测试报文转换方法、装置、设备及介质与流程

文档序号:22111493发布日期:2020-09-04 15:06阅读:442来源:国知局
ATMP系统的测试报文转换方法、装置、设备及介质与流程

本发明涉及信息技术领域,尤其涉及一种atmp系统的测试报文转换方法、装置、设备及介质。



背景技术:

自动取款机(automatictellermachine,简称atm),意思是自动柜员机,是一种高度精密的机电一体化装置,利用磁性代码卡或智能卡实现金融交易的自助服务,代替银行柜面人员的工作。atm终端处理系统(automatictellermachinecontrol,简称atm),是终端交易渠道最底层的终端设备控制系统,运行于终端设备,主要用于向持卡人和atm设备管理员提供各种交易和管理的交互界面,并与atmp通过报文交互实现特定的功能。atm前置处理系统(automatictellermachinepreconsole,简称atmp)是一种通信前置系统,界于应用前置系统或相关业务主机和atmc之间,主要用于实现终端的设备管理、通信方式规范化(接入内部网络)、交易报文格式转换与转发等功能。

现有技术对atm的测试分为对atmc的前端测试和对atmp的后端测试。在针对atmp进行测试时,需要等到atmc准备妥当后,才能进行测试。这是因为atmp接收的是8583报文。与现有的字符串报文(例如xml、json、url)不同,8583报文是一种16进制数格式的报文,无法通过编写脚本代码来编写8583报文。因此在atmc准备就绪之前,无法对atmp进行预先测试,只能在atmc准备就绪后再对atmp进行测试,效率低,不利于项目开发。进一步地,atmc的型号非常多,如果每一种型号都准备一台,也会造成对办公场地资源的占用,并且设备非常笨重,不易于移动;同时因为使用atmc,涉及到一些插卡、放钞、取钞等等需要人工的操作,没有办法实现对atmp的自动化测试。

因此,寻找一种方法解决现有技术必须在具备atmc的情况下才能对atmp展开测试、测试效率低、无法进行自动化测试的问题成为本领域技术人员亟需解决的技术问题。



技术实现要素:

本发明实施例提供了一种atmp系统的测试报文转换方法、装置、设备及介质,以解决现有技术必须在具备atmc的情况下才能对atmp展开测试、测试效率低、无法进行自动化测试的问题。

一种atmp系统的测试报文转换方法,包括:

获取用于对atmp系统进行测试的非目标格式报文;

解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值;

根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文;

将所述目标格式报文发送至所述atmp系统的所述待测试接口,以使所述atmp系统的所述待测试接口根据所述目标格式报文进行解析及处理。

可选地,所述解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值包括:

设置atmp系统上的接口与参数映射关系;

解析所述非目标格式报文得到待测试接口,根据所述待测试接口查询所述接口与参数映射关系,得到所述待测试接口对应的参数,作为待测试参数;

解析所述非目标格式报文得到所述待测试参数对应的参数值。

可选地,所述根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文包括:

设置atmp系统上的参数与字段域映射关系;

查询所述参数与字段域映射关系,得到所述待测试参数对应的字段域;

根据所述字段域的数据格式,将所述待测试参数对应的参数值转化为所述字段域的字段值;

将所述字段值传入所述目标格式报文的字段域中,生成目标格式报文。

可选地,所述将所述字段值传入所述目标格式报文的字段域中包括:

当所述字段域为变长域时,获取预定义的长度阈值,将所述字段值的长度与所述预定义的长度阈值进行比较;

若所述字段值的长度小于所述预定义的长度阈值,将所述字段值传入所述目标格式报文的字段域中,并在所述字段值的前面补0;

若所述字段值的长度大于所述预定义的长度阈值,则生成报错消息。

可选地,所述将所述字段值传入所述目标格式报文的字段域中包括:

当所述字段域为定长域时,将所述字段值的长度与所述字段域的固定长度阈值进行比较;

若所述字段值的长度小于所述固定长度阈值,将所述字段值传入所述目标格式报文的字段域中,并在所述字段值的后面补空格;

若所述字段值的长度大于所述固定长度阈值,则生成报错消息。

一种atmp系统的测试报文转换装置,包括:

获取模块,用于获取用于对atmp系统进行测试的非目标格式报文;

解析模块,用于解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值;

转换模块,用于根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文;

发送模块,用于将所述目标格式报文发送至所述atmp系统的所述待测试接口,以使所述atmp系统的所述待测试接口根据所述目标格式报文进行解析及处理。

可选地,所述解析模块包括:

第一设置单元,用于设置atmp系统上的接口与参数映射关系;

第一解析单元,用于解析所述非目标格式报文得到待测试接口,根据所述待测试接口查询所述接口与参数映射关系,得到所述待测试接口对应的参数,作为待测试参数;

第二解析单元,用于解析所述非目标格式报文得到所述待测试参数对应的参数值。

可选地,所述转换模块包括:

第一设置单元,用于设置atmp系统上的参数与字段域映射关系;

查询单元,用于查询所述参数与字段域映射关系,得到所述待测试参数对应的字段域;

转换单元,用于根据所述字段域的数据格式,将所述待测试参数对应的参数值转化为所述字段域的字段值;

生成单元,用于将所述字段值传入所述目标格式报文的字段域中,生成目标格式报文。

一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述atmp系统的测试报文转换方法。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述atmp系统的测试报文转换方法。

本发明实施例通过构建atm模拟器,基于所述模拟器获取用于对atmp系统进行测试的非目标格式报文;解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值;然后根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文;将所述目标格式报文发送至所述atmp系统的所述待测试接口,以使所述atmp系统的所述待测试接口根据所述目标格式报文进行解析及处理;从而实现了在无atmc实体设备的情况下生成atmp的测试报文,对atmp进行开发和测试,有效地解决了现有技术必须在具备atmc的情况下才能对atmp展开测试、测试效率低、无法进行自动化测试的问题,实现了atmp的自动化测试,提高测试效率。

附图说明

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

图1是本发明一实施例中atmp系统的测试报文转换方法的一流程图;

图2是本发明一实施例中atmp系统的测试报文转换方法中步骤s102的一流程图;

图3是本发明一实施例中atmp系统的测试报文转换方法中步骤s103的一流程图;

图4是本发明一实施例中atmp系统的测试报文转换方法中步骤s304的一流程图;

图5是本发明另一实施例中atmp系统的测试报文转换方法中步骤s304的一流程图;

图6是本发明一实施例中atmp系统的测试报文转换装置的一原理框图;

图7是本发明一实施例中计算机设备的一示意图。

具体实施方式

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

本发明实施例提供的atmp系统的测试报文转换方法的目的是为了克服现有技术在对atmp进行测试时必须依赖atmc实体设备发送测试报文的问题,以实现在无atmc实体设备的情况下生成atmp的测试报文,对atmp进行开发和测试,实现atmp的自动化测试,提高测试效率。所述atmp系统的测试报文转换方法应用于本发明实施例提供的atm模拟器。所述atm模拟器用于模拟atmc系统向atmp系统发送测试报文,通过接收用户传入的非目标格式测试报文,将所述非目标格式测试报文转换为目标格式测试报文,然后将所述目标格式测试报文发送至所述atmp系统。

以下将对本实施例提供的atmp系统的测试报文转换方法进行详细的描述。如图1所示,所述atmp系统的测试报文转换方法包括:

在步骤s101中,获取用于对atmp系统进行测试的非目标格式报文。

在这里,所述非目标格式报文是指与atmp系统适用的目标格式不一致的字符串格式的报文。这些非目标格式报文可以通过编写脚本代码得到的,比如xml报文、json报文、url报文。所述非目标格式报文中包括atmp系统的待测试接口、用于对所述待测试接口进行测试的待测试参数及其对应的参数值。用户可预先编写好所述待测试接口对应的非目标格式报文,然后将所述非目标格式报文传输所述atm模拟器,atm模拟器获取所述非目标格式报文。

在步骤s102中,解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值。

按照所述非目标格式报文的字符串格式,对所述非目标格式报文进行解析。比如当所述非目标格式报文为xml报文,则按照xml报文的解析方式对所述非目标格式报文进行解析;当所述非目标格式报文为json报文,则按照json报文的解析方式对所述非目标格式报文进行解析。通过解析,得到所述非目标格式报文所要测试的接口,即atmp系统的待测试接口,以及得到待测试参数及其对应的参数值。

可选地,如图2所示,所述步骤s102解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值包括:

在步骤s201中,设置atmp系统上的接口与参数映射关系。

在这里,所述接口与参数映射关系记录了所述atmp系统上的接口所需要的参数,通常一个atmp系统接口对应至少一个参数。

在步骤s202中,解析所述非目标格式报文得到待测试接口,根据所述待测试接口查询所述接口与参数映射关系,得到所述待测试接口对应的参数,作为待测试参数。

在接收到所述非目标格式报文后,对所述非目标格式报文进行解析可以得到其对应的待测试接口,即atmp上的系统接口。然后根据所述待测试接口,查询预先配置的接口与参数映射关系,得到所述待测试接口对应的参数,从而得到待测试报文中携带的参数类型。

在步骤s203中,解析所述非目标格式报文得到所述待测试参数对应的参数值。

按照所述待测试参数解析所述非目标格式报文,将所述非目标格式报文中的内容赋值给所述待测试参数,得到所述待测试参数对应的参数值,从而保证了解析得到的所述待测试参数及其参数值,为所述目标格式报文所需要的参数,提高了解析效率。

在步骤s103中,根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文。

在这里,所述目标格式报文包括8583报文。所述8583报文是基于iso8583报文国际标准的包格式的通讯协议,最多由128个字段域组成。每个字段域对应固定含义,比如第2字段域为帐号域,第35字段域为磁道信息域。所述atmp系统上包括若干个待测试接口,每一所述待测试接口使用到所述128域中的一个或多个,比如账户信息查询接口使用到了第1、3、5、7、9字段域,转账接口使用到了第2、4、6、8、10字段域。因此,每一所述待测试接口对应的目标格式报文所使用的字段域不尽相同。鉴于此,本发明实施例通过构建接口与参数映射关系、参数与字段域映射关系,实现了所述非目标格式报文与所述目标格式报文之间的转换。

可选地,如图3所示,所述步骤s103根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文包括:

在步骤s301中,设置atmp系统上的参数与字段域映射关系。

其中,所述参数与字段域映射关系记录了每一个参数与所述目标格式报文上的字段域之间的对应关系。

在步骤s302中,查询所述参数与字段域映射关系,得到所述待测试参数对应的字段域。

在解析所述非目标格式报文得到待测试参数之后,基于所述参数与字段域映射关系,遍历每一待测试参数,得到所述待测试参数对应的字段域,即所述待测试参数在所述目标格式报文上的位置。

在步骤s303中,根据所述字段域的数据格式,将所述待测试参数对应的参数值转化为所述字段域的字段值。

在这里,每一个字段域为一个8位的16进制数。遍历每一个待测试参数,将所述待测试参数的参数值转换为8位的16进制数,得到所述待测试参数对应字段域的字段值。

在步骤s304中,将所述字段值传入所述目标格式报文的字段域中,生成目标格式报文。

可选地,在所述8583报文中,每个字段域都有统一的规定,并且根据长度是否可变分为定长域与变长域。如图4所示,在将所述待测试参数对应的参数值转化为所述字段域的字段值后,所述步骤s304将所述字段值传入所述目标格式报文的字段域中包括:

在步骤s401中,当所述字段域为变长域时,获取预定义的长度阈值,将所述字段值的长度与所述预定义的长度阈值进行比较。

在这里,所述预定义的长度阈值为用户在使用该变长域之前指定的所述变长域的最大长度。用户可以根据需要设置所述变长域的长度阈值。

在步骤s402中,若所述字段值的长度小于所述预定义的长度阈值,将所述字段值传入所述目标格式报文的字段域中,并在所述字段值的前面补0。

在步骤s403中,若所述字段值的长度大于所述预定义的长度阈值,则生成报错消息。

在这里,对于变长域,用户可以指定变长域的长度阈值,当且仅当所述字段值的长度小于所述长度阈值时,将所述字段值填充到所述目标格式报文的字段域中,并在所述字段值的前面补充0,以填满整个字段域;若所述字段值的长度大于所述长度阈值时,表明字段值或者字段域出现错误,则生成报错消息。

可选地,如图5所示,所述步骤s304将所述字段值传入所述目标格式报文的字段域中包括:

在步骤s501中,当所述字段域为定长域时,将所述字段值的长度与所述字段域的固定长度阈值进行比较。

在这里,所述固定长度阈值为所述定长域的最大长度,无需用户指定的。所述定长域的固定长度阈值只有一个。

在步骤s502中,若所述字段值的长度小于所述固定长度阈值,将所述字段值传入所述目标格式报文的字段域中,并在所述字段值的后面补空格。

在步骤s503中,若所述字段值的长度大于所述固定长度阈值,则生成报错消息。

在这里,对于定长域,对应一个固定长度阈值,而用户无法指定长度阈值。当且仅当所述字段值的长度小于所述固定长度阈值时,将所述字段值填充到所述目标格式报文的字段域中,并在所述字段值的后面补充空格,以填满整个字段域;若所述字段值的长度大于所述固定长度阈值时,表明字段值或者字段域出现错误,则生成报错消息。

通过上述步骤,遍历每一个待测试参数,将所述待测试参数对应的参数值转化为对应的字段值,将所述字段值写入对应的字段域中,组成一个完整的报文,从而得到目标格式报文。

通过本实施例预先配置的接口与参数映射关系,可解析任意一种类型的非目标格式报文均可以得到目标格式报文所需要的接口及参数,通过参数与字段域映射关系,可直接将非目标格式报文所需的接口及参数转化为目标格式报文,从而有效地实现了非目标格式报文到目标格式报文之间的转化,提高了报文转换的可靠性。

在步骤s104中,将所述目标格式报文发送至所述atmp系统的所述待测试接口,以使所述atmp系统的所述待测试接口根据所述目标格式报文进行解析及处理。

遍历完所述非目标格式报文中的每一个待测试参数后,将所述待测试参数转化为对应的字段值并填入对应的字段域之后,所得到的报文作为目标格式报文。将所述目标格式报文发送至所述atmp系统,以使得所述atmp系统的所述待测试接口接收所述目标格式报文,对所述目标格式报文进行解析及处理,完成对所述待测试接口的测试。

通过本实施例,用户可以通过编写字符串格式的非目标格式报文,然后通过atmp系统的测试报文转换方法将所述非目标格式报文转换为目标格式报文,并将所述目标格式报文发送至所述atmp系统,实现了在不具备atmc的场景下也能对atmp展开测试,且相比于目标格式报文,编写字符串格式的非目标格式报文更容易实现。在实际应用中,比如在模拟多种币测试中,现有技术需要在atmc系统准备就绪的情况下,准备好100元、50元、20元等面值实物纸币,使用本发明提供的atmp系统的测试报文之后,无需准备atmc以及各面值实物纸币,只需在atm模拟器上传入多币种测试的非目标格式报文,再通过本发明提供的atmp系统的测试报文转换方法将所述非目标格式报文转换为目标格式报文发送至所述atmp系统,即可完成测试,有效地提高了atmp系统的测试效率低和自动化程度。除模拟多种币测试,本发明提供的atmp系统的测试报文转换方法还适用于钞面值自定义测试、超时场景、异常输入场景等。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

在一实施例中,提供一种atmp系统的测试报文转换装置,该atmp系统的测试报文转换装置与上述实施例中atmp系统的测试报文转换方法一一对应。如图6所示,该atmp系统的测试报文转换装置包括获取模块61、解析模块62、转换模块63、发送模块64。各功能模块详细说明如下:

获取模块61,用于获取用于对atmp系统进行测试的非目标格式报文;

解析模块62,用于解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值;

转换模块63,用于根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文;

发送模块64,用于将所述目标格式报文发送至所述atmp系统的所述待测试接口,以使所述atmp系统的所述待测试接口根据所述目标格式报文进行解析及处理。

可选地,所述解析模块62包括:

第一设置单元,用于设置atmp系统上的接口与参数映射关系;

第一解析单元,用于解析所述非目标格式报文得到待测试接口,根据所述待测试接口查询所述接口与参数映射关系,得到所述待测试接口对应的参数,作为待测试参数;

第二解析单元,用于解析所述非目标格式报文得到所述待测试参数对应的参数值。

可选地,所述转换模块63包括:

第一设置单元,用于设置atmp系统上的参数与字段域映射关系;

查询单元,用于查询所述参数与字段域映射关系,得到所述待测试参数对应的字段域;

转换单元,用于根据所述字段域的数据格式,将所述待测试参数对应的参数值转化为所述字段域的字段值;

生成单元,用于将所述字段值传入所述目标格式报文的字段域中,生成目标格式报文。

可选地,所述生成单元包括:

第一比较单元,用于当所述字段域为变长域时,获取预定义的长度阈值,将所述字段值的长度与所述预定义的长度阈值进行比较;

第一传入单元,用于若所述字段值的长度小于所述预定义的长度阈值,将所述字段值传入所述目标格式报文的字段域中,并在所述字段值的前面补0;

第一报错单元,用于若所述字段值的长度大于所述预定义的长度阈值,则生成报错消息。

可选地,所述生成单元还包括:

第二比较单元,用于当所述字段域为定长域时,将所述字段值的长度与所述字段域的固定长度阈值进行比较;

第二传入单元,用于若所述字段值的长度小于所述固定长度阈值,将所述字段值传入所述目标格式报文的字段域中,并在所述字段值的后面补空格;

第二报错单元,用于若所述字段值的长度大于所述固定长度阈值,则生成报错消息。

关于atmp系统的测试报文转换装置的具体限定可以参见上文中对于atmp系统的测试报文转换方法的限定,在此不再赘述。上述atmp系统的测试报文转换装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种atmp系统的测试报文转换方法。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

获取用于对atmp系统进行测试的非目标格式报文;

解析所述非目标格式报文,得到atmp系统的待测试接口、待测试参数及其对应的参数值;

根据所述待测试参数及其对应的参数值生成所述待测试接口对应的目标格式报文;

将所述目标格式报文发送至所述atmp系统的所述待测试接口,以使所述atmp系统的所述待测试接口根据所述目标格式报文进行解析及处理。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

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