一种报文处理方法及系统与流程

文档序号:19124001发布日期:2019-11-13 01:56阅读:187来源:国知局
一种报文处理方法及系统与流程

本申请涉及控制领域,尤其涉及一种报文处理方法及系统。



背景技术:

在进行报文清算过程中,每次只能针对一种报文类型或一个测试环境进行模拟发报,无法实现不同类型或不同测试环境下的批量发报。



技术实现要素:

有鉴于此,本申请提供一种报文处理方法及系统,其具体方案如下:

一种报文处理方法,应用于报文处理系统,包括:

获取不少于一个报文的发报参数,所述发报参数至少包括:测试环境信息、报文类型及发报方式;

依据所述不少于一个报文的发报参数确定所述不少于一个报文的报文数据;

将确定的所述不少于一个报文的报文数据进行组报,得到第一数据,将所述第一数据中的每一个报文数据分别按照所述报文数据对应的报文参数进行发送。

进一步的,所述将确定的所述不少于一个报文的报文数据进行组报,得到第一数据,包括:

按照预先设置的报文管理模板,根据报文笔数和/或文本数,将确定的所述不少于一个报文的报文数据进行组报。

进一步的,所述将确定的所述不少于一个报文的报文数据进行组报,得到第一数据,包括:

将确定的所述不少于一个报文中的所有报文的报文数据中的字段进行拼接,组成拼接后的文本,所述拼接后的文本即为第一数据。

进一步的,还包括:

将所述不少于一个报文的报文数据按照预设场次进行数据填充,以便对填充后的报文数据进行组报。

进一步的,所述测试环境信息至少包括:测试环境的地址信息,及所述报文处理系统与所述测试环境的通讯方式。

一种报文处理系统,包括:获取单元,确定单元,组报单元及发送单元,其中:

所述获取单元用于获取不少于一个报文的发报参数,所述发报参数至少包括:测试环境信息、报文类型及发报方式;

所述确定单元用于依据所述不少于一个报文的发报参数确定所述不少于一个报文的报文数据;

所述组报单元用于将确定的所述不少于一个报文的报文数据进行组报,得到第一数据;

所述发送单元用于将所述第一数据中的每一个报文数据分别按照所述报文数据对应的报文参数进行发送。

进一步的,所述组报单元用于:

按照预先设置的报文管理模板,根据报文笔数和/或文本数,将确定的所述不少于一个报文的报文数据进行组报。

进一步的,所述组报单元用于:

将确定的所述不少于一个报文中的所有报文的报文数据中的字段进行拼接,组成拼接后的文本,所述拼接后的文本即为第一数据。

进一步的,还包括:填充单元,其中:

所述填充单元用于将所述不少于一个报文的报文数据按照预设场次进行数据填充,以便对填充后的报文数据进行组报。

进一步的,所述测试环境信息至少包括:测试环境的地址信息,及所述报文处理系统与所述测试环境的通讯方式。

从上述技术方案可以看出,本申请公开的报文处理方法及系统,获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式,依据不少于一个报文的发报参数确定不少于一个报文的报文数据,将确定的不少于一个报文的报文数据进行组报,得到第一数据,将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。本方案通过将多个报文数据进行组报并统一发报,而这多个报文数据可以具有不同的测试环境信息,不同的报文类型或不同的发报方式,实现了将不同测试环境、不同报文类型或不同发报方式的多个报文同时发报,避免了对不同测试环境、不同报文类型或不同发报方式的报文需要进行多次发报导致的发报效率低下的问题。

附图说明

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

图1为本申请实施例公开的一种报文处理方法的流程图;

图2为本申请实施例公开的一种报文处理方法的流程图;

图3为本申请实施例公开的一种报文处理系统的结构示意图。

具体实施方式

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

本申请公开了一种报文处理方法,应用于报文处理系统,其流程图如图1所示,包括:

步骤s11、获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式;

在需要对报文进行发送时,需要获取待发送的报文的相关发报参数,以便根据发报参数确定报文,从而实现报文的发送。

发报参数至少包括:测试环境信息,报文类型及发报方式,发报参数还可以包括:报文笔数、文本数等。

其中,测试环境信息至少包括:测试环境的地址信息,及报文处理方法所基于的系统与测试环境的通讯方式。测试环境的地址信息可具体为ip地址信息,通讯方式可以为:tcp或cd传输等,通过测试环境的地址信息及通讯方式可实现报文发送过程中地址及通讯方式的确定,从而实现报文的发送。

报文类型有多种,如:xml格式,txt格式,swift标准,非swift标准。

发报方式至少包括:批量发送,联机发送等。

当有多个报文需要发送时,确定每个报文的发报参数,即确定每一个报文的测试环境信息、报文类型、发报参数、报文笔数及文本数,以便对具有相同或不同发报参数的多个报文同时发报。

步骤s12、依据不少于一个报文的发报参数确定不少于一个报文的报文数据;

一组发报参数可确定一个报文的报文数据,即预先设定每一个报文对应的一组发报参数。

例如:报文a的发报参数为:测试环境信息为a1,报文类型为a2,发报方式为a3;报文b的发报参数为:测试环境信息为b1,报文类型为b2,发报方式为b3。报文a与报文b中的发报参数可以相同,也可以不同,报文a与报文b相同时,报文a与报文b具有相同的报文数据,报文a与报文b不同时,报文a与报文b具有不同的报文数据。

在需要将报文a与报文b同时发报时,若报文a与报文b相同,则在确定了上述报文的测试环境信息、报文类型及发报方式后,确定该报文的笔数及文本数,即可实现同一报文的批量发送;若报文a与报文b相同,则在确定了报文a与报文b分别的测试环境信息、报文类型及发报方式后,还需要确定报文a的笔数及文本数及报文b的笔数及文本数,以便实现报文a与报文b的同时发报。

步骤s13、将确定的不少于一个报文的报文数据进行组报,得到第一数据,将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。

将确定的不少于一个报文的报文数据进行组报,得到第一数据,即确定了每一种报文的报文数据后,将相同或不同的报文的报文数据组合,得到第一数据,以便实现组合发报,即实现相同或不同的报文的同时发报。

在组报完成后,将第一数据中的每一个报文数据按照其对应的报文参数同时分别发送。

具体的,若同时发报的报文具有相同的测试环境信息、相同的报文类型及相同的发报方式,那么,在发报时,通过批量发报即可实现多个报文的发送;

若同时发报的报文具有相同的测试环境信息,相同的报文类型及不同的发报方式,那么,在发报时,将这些具有不同的发报方式的报文进行组报,之后得到第一数据,将第一数据中具有不同发报方式的报文同时发报,以实现将具有不同发报方式的报文分别以其对应的发报方式同时发报,如:批量发送报文、联机发送报文、通过socket方式发送报文,通过mq方式发送报文,通过c/shell脚本发送报文等;

若同时发报的报文具有相同的测试环境信息,不同的报文类型及不同的发报方式,那么,在发报时,将这些具有不同的报文类型及发报方式的报文进行组报,之后得到第一数据,将第一数据中具有不同的报文类型及发报方式的报文同时发报,以实现将具有不同报文类型的报文分别以其对应的发报方式同时发报,从而实现同时发送xml、txt、标准swift格式等类型的报文;

若同时发报的报文具有不同的测试环境信息,相同的报文类型及相同的发报方式,那么,在发报时,将这些具有不同的测试环境信息的报文进行组报,之后得到第一数据,将第一数据中具有不同的测试环境信息的报文同时发报,以实现将具有不同测试环境信息的报文同时发送,并分别发送至不同的测试环境。

同时发报的报文也可以为具有其他不同类型的报文参数的报文,同时发报的发报方式与上述相同,在此不再赘述。

本实施例公开的报文处理方法,获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式,依据不少于一个报文的发报参数确定不少于一个报文的报文数据,将确定的不少于一个报文的报文数据进行组报,得到第一数据,将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。本方案通过将多个报文数据进行组报并统一发报,而这多个报文数据可以具有不同的测试环境信息,不同的报文类型或不同的发报方式,实现了将不同测试环境、不同报文类型或不同发报方式的多个报文同时发报,避免了对不同测试环境、不同报文类型或不同发报方式的报文需要进行多次发报导致的发报效率低下的问题。

本实施例公开了一种报文处理方法,应用于报文处理系统,其流程图如图2所示,包括:

步骤s21、获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式;

步骤s22、依据不少于一个报文的发报参数确定不少于一个报文的报文数据;

步骤s23、按照预先设置的报文管理模板,根据报文笔数和/或文本数,将确定的不少于一个报文的报文数据进行组报,得到第一数据;

预先设置报文管理模板,报文管理模板中定义了报文类型、所需场次/节点及其组成规则,根据该规则进行报文的组报。

具体的,报文管理模板有以下功能,首先选定报文类型,如:swift标准的mt198,为该报文类型选定所有场次/节点/字段,为场次设定填写规则或参数对象,其中,填写规则是用于在组报时根据填写规则自动进行组报,参数对象是用于在组报时根据参数对象到数据管理获取具体值。其中,不同的报文类型具有默认的报文格式。

具体的,确定具有相同测试环境信息、相同报文类型及相同发报方式的报文为相同的报文,确定相同报文的笔数及文本数,此时,仅是相同报文中笔数及文本数的变化,无需根据测试环境信息、报文类型及发报方式进行组报,可直接以批量发送的形式发送相同的报文;

对于具有不同测试环境信息、不同报文类型或不同发报方式的报文,确定每一类型报文的笔数及文本数,之后将每一类型的报文组报为一个报文,之后通过发送发报指令实现这组报后的第一数据发送,在将第一数据从当前终端发出后,之后在服务端拆分为原来的不同的报文,之后将所有的不同的报文根据发报参数分别发送至对应的测试环境,实现同时统一向不同的环境以不同的发报方式发送不同类型的报文。

其组报过程具体为:

将确定的不少于一个报文中的所有报文的报文数据中的字段进行拼接,组成拼接后的文本,拼接后的文本即为第一数据。

即确定需要同时发送的报文的报文数据,将所有的报文数据中每相邻两个报文的报文数据中的字段进行拼接,实现每相邻两个报文的报文数据中的字段首尾相接,使得多个不同的报文的报文数据最终拼接成一个文本,作为一个报文进行发送,在将拼接成一个文本的报文数据发送后,在服务端将拼接成的文本进行拆分,拆分成拼接前的多个不同的报文的报文数据,再根据不同的发报方式将不同类型的报文发送至不同的测试环境中,实现将具有不同测试环境信息、不同报文类型或不同发报方式的报文同时发送。

具体的,组报过程中,根据选定的报文类型自动根据报文管理设定的参数,如该场次/节点/字段设置了参数对象account,其中,参数对象account已在数据管理过程中进行了定义并赋值,组报时将直接调取account取值填充进该场次/节点/字段。若该场次/节点/字段设置的是填充规则,例如报文编号为日期+序列号,则自动填充为日期+序列号;填充完成后,将所涉及的场次/节点/字段按照报文格式拼接起来,完成组报。

其中,拼接可能是收尾相连实现拼接,也可能是一次场次/节点/字段为一行进行的拼接。

进一步的,还包括:

将不少于一个报文的报文数据按照预设场次进行数据填充,以便对填充后的报文数据进行组报。

不同的报文对应不同的场次/节点,每个场次/节点有其对应的规则,将不同的报文的报文数据按照其对应的场次/节点定义的规则进行数据填充,以便对填充后的数据进行组报。

步骤s24、将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。

本实施例公开的报文处理方法,获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式,依据不少于一个报文的发报参数确定不少于一个报文的报文数据,将确定的不少于一个报文的报文数据进行组报,得到第一数据,将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。本方案通过将多个报文数据进行组报并统一发报,而这多个报文数据可以具有不同的测试环境信息,不同的报文类型或不同的发报方式,实现了将不同测试环境、不同报文类型或不同发报方式的多个报文同时发报,避免了对不同测试环境、不同报文类型或不同发报方式的报文需要进行多次发报导致的发报效率低下的问题。

本实施例公开了一种报文处理系统,其结构示意图如图3所示,包括:

获取单元31,确定单元32,组报单元33及发送单元34。

其中,获取单元31用于获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式;

确定单元32用于依据不少于一个报文的发报参数确定不少于一个报文的报文数据;

组报单元33用于将确定的不少于一个报文的报文数据进行组报,得到第一数据;

发送单元34用于将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。

在需要对报文进行发送时,需要获取待发送的报文的相关发报参数,以便根据发报参数确定报文,从而实现报文的发送。

发报参数至少包括:测试环境信息,报文类型及发报方式,发报参数还可以包括:报文笔数、文本数等。

其中,测试环境信息至少包括:测试环境的地址信息,及报文处理方法所基于的系统与测试环境的通讯方式。测试环境的地址信息可具体为ip地址信息,通讯方式可以为:tcp或cd传输等,通过测试环境的地址信息及通讯方式可实现报文发送过程中地址及通讯方式的确定,从而实现报文的发送。

报文类型有多种,如:xml格式,txt格式,swift标准,非swift标准。

发报方式至少包括:批量发送,联机发送等。

当有多个报文需要发送时,确定每个报文的发报参数,即确定每一个报文的测试环境信息、报文类型、发报参数、报文笔数及文本数,以便对具有相同或不同发报参数的多个报文同时发报。

一组发报参数可确定一个报文的报文数据,即预先设定每一个报文对应的一组发报参数。

例如:报文a的发报参数为:测试环境信息为a1,报文类型为a2,发报方式为a3;报文b的发报参数为:测试环境信息为b1,报文类型为b2,发报方式为b3。报文a与报文b中的发报参数可以相同,也可以不同,报文a与报文b相同时,报文a与报文b具有相同的报文数据,报文a与报文b不同时,报文a与报文b具有不同的报文数据。

在需要将报文a与报文b同时发报时,若报文a与报文b相同,则在确定了上述报文的测试环境信息、报文类型及发报方式后,确定该报文的笔数及文本数,即可实现同一报文的批量发送;若报文a与报文b相同,则在确定了报文a与报文b分别的测试环境信息、报文类型及发报方式后,还需要确定报文a的笔数及文本数及报文b的笔数及文本数,以便实现报文a与报文b的同时发报。

将确定的不少于一个报文的报文数据进行组报,得到第一数据,即确定了每一种报文的报文数据后,将相同或不同的报文的报文数据组合,得到第一数据,以便实现组合发报,即实现相同或不同的报文的同时发报。

在组报完成后,将第一数据中的每一个报文数据按照其对应的报文参数同时分别发送。

具体的,若同时发报的报文具有相同的测试环境信息、相同的报文类型及相同的发报方式,那么,在发报时,通过批量发报即可实现多个报文的发送;

若同时发报的报文具有相同的测试环境信息,相同的报文类型及不同的发报方式,那么,在发报时,将这些具有不同的发报方式的报文进行组报,之后得到第一数据,将第一数据中具有不同发报方式的报文同时发报,以实现将具有不同发报方式的报文分别以其对应的发报方式同时发报,如:批量发送报文、联机发送报文、通过socket方式发送报文,通过mq方式发送报文,通过c/shell脚本发送报文等;

若同时发报的报文具有相同的测试环境信息,不同的报文类型及不同的发报方式,那么,在发报时,将这些具有不同的报文类型及发报方式的报文进行组报,之后得到第一数据,将第一数据中具有不同的报文类型及发报方式的报文同时发报,以实现将具有不同报文类型的报文分别以其对应的发报方式同时发报,从而实现同时发送xml、txt、标准swift格式等类型的报文;

若同时发报的报文具有不同的测试环境信息,相同的报文类型及相同的发报方式,那么,在发报时,将这些具有不同的测试环境信息的报文进行组报,之后得到第一数据,将第一数据中具有不同的测试环境信息的报文同时发报,以实现将具有不同测试环境信息的报文同时发送,并分别发送至不同的测试环境。

同时发报的报文也可以为具有其他不同类型的报文参数的报文,同时发报的发报方式与上述相同,在此不再赘述。

进一步的,组报单元33用于:

按照预先设定的报文管理模板,根据报文笔数和/或文本数,将确定的所述不少于一个报文的报文数据进行组报。

预先设置报文管理模板,报文管理模板中定义了报文类型、所需场次/节点及其组成规则,根据该规则进行报文的组报。

具体的,报文管理模板有以下功能,首先选定报文类型,如:swift标准的mt198,为该报文类型选定所有场次/节点/字段,为场次设定填写规则或参数对象,其中,填写规则是用于在组报时根据填写规则自动进行组报,参数对象是用于在组报时根据参数对象到数据管理获取具体值。其中,不同的报文类型具有默认的报文格式。

具体的,确定具有相同测试环境信息、相同报文类型及相同发报方式的报文为相同的报文,确定相同报文的笔数及文本数,此时,仅是相同报文中笔数及文本数的变化,无需根据测试环境信息、报文类型及发报方式进行组报,可直接以批量发送的形式发送相同的报文;

对于具有不同测试环境信息、不同报文类型或不同发报方式的报文,确定每一类型报文的笔数及文本数,之后将每一类型的报文组报为一个报文,之后通过发送发报指令实现这组报后的第一数据发送,在将第一数据从当前终端发出后,之后在服务端拆分为原来的不同的报文,之后将所有的不同的报文根据发报参数分别发送至对应的测试环境,实现同时统一向不同的环境以不同的发报方式发送不同类型的报文。

其组报过程具体为:

将确定的不少于一个报文中的所有报文的报文数据中的字段进行拼接,组成拼接后的文本,拼接后的文本即为第一数据。

即确定需要同时发送的报文的报文数据,将所有的报文数据中每相邻两个报文的报文数据中的字段进行拼接,实现每相邻两个报文的报文数据中的字段首尾相接,使得多个不同的报文的报文数据最终拼接成一个文本,作为一个报文进行发送,在将拼接成一个文本的报文数据发送后,在服务端将拼接成的文本进行拆分,拆分成拼接前的多个不同的报文的报文数据,再根据不同的发报方式将不同类型的报文发送至不同的测试环境中,实现将具有不同测试环境信息、不同报文类型或不同发报方式的报文同时发送。

具体的,组报过程中,根据选定的报文类型自动根据报文管理设定的参数,如该场次/节点/字段设置了参数对象account,其中,参数对象account已在数据管理过程中进行了定义并赋值,组报时将直接调取account取值填充进该场次/节点/字段。若该场次/节点/字段设置的是填充规则,例如报文编号为日期+序列号,则自动填充为日期+序列号;填充完成后,将所涉及的场次/节点/字段按照报文格式拼接起来,完成组报。

其中,拼接可能是收尾相连实现拼接,也可能是一次场次/节点/字段为一行进行的拼接。

进一步的,还包括:

将不少于一个报文的报文数据按照预设场次进行数据填充,以便对填充后的报文数据进行组报。

不同的报文对应不同的场次/节点,每个场次/节点有其对应的规则,将不同的报文的报文数据按照其对应的场次/节点定义的规则进行数据填充,以便对填充后的数据进行组报。

本实施例公开的报文处理系统,获取不少于一个报文的发报参数,发报参数至少包括:测试环境信息、报文类型及发报方式,依据不少于一个报文的发报参数确定不少于一个报文的报文数据,将确定的不少于一个报文的报文数据进行组报,得到第一数据,将第一数据中的每一个报文数据分别按照报文数据对应的报文参数进行发送。本方案通过将多个报文数据进行组报并统一发报,而这多个报文数据可以具有不同的测试环境信息,不同的报文类型或不同的发报方式,实现了将不同测试环境、不同报文类型或不同发报方式的多个报文同时发报,避免了对不同测试环境、不同报文类型或不同发报方式的报文需要进行多次发报导致的发报效率低下的问题。

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

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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