性能测试模拟器及其报文组包模块、报文组包及发送方法

文档序号:7758949阅读:601来源:国知局
专利名称:性能测试模拟器及其报文组包模块、报文组包及发送方法
技术领域
本发明涉及银行测试领域,更为具体地,涉及银行系统性能测试中的一种性能测 试模拟器、模拟后端系统发送报文的方法,以及其中的报文组包模块和报文组包方法。
背景技术
随着IT技术的不断发展,银行的总体架构朝着面向服务的体系结构 (service-oriented architecture, S0A)发展。越来越多的系统采用开放式的服务接口, 通过企业信息总线向外提供服务。随着银行系统数量的增加,系统采用的软硬件平台种类 也不断增加,对系统进行测试的需求也越来越多。现有技术中,用测试工具对银行系统进行测试时存在的最大问题是在测试的过程 中被测的银行系统过多依赖后端系统,因此造成在测试银行系统时,需要将银行系统与对 应的不同的后端系统分别通信以确保测试工作的顺利进行。然而,对于同一被测的银行系 统而言,对应的后端系统数量众多且每年仍会增加新的后端系统,并且现有的后端系统存 在各种类型的报文格式(如自定义二进制格式报文、自定义字符串报文、FML报文、XML报文 等),因此,在测试过程中,需要针对各个后端系统分别编写报文组包程序以实现被测的银 行系统与相应的后端系统的顺利通信,这会造成开发周期长、代码复用程度低、维护性差等 问题,从而加重了开发成本,给银行的测试工作带来极大的不方便。

发明内容
本发明提供了银行系统性能测试中的一种性能测试模拟器、模拟后端系统发送报 文的方法,以及其中的报文组包模块和报文组包方法,通过将通用报文按照至少一种后端 系统的报文样式定义进行组包得到后端系统对应的不同类型的响应报文,实现了通过一个 性能测试模拟器就可以仿真与被测系统对应的多种后端系统,给银行的测试工作带来了极 大的方便。根据本发明的第一方面,提供一种用于银行系统性能测试的报文组包方法,包 括读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统在测试过程 中需要连接的后端系统设定的;读取通用报文,并根据读取的报文样式定义将通用报文进行组包以得到响应报 文。根据本发明的第二方面,提供一种用于银行系统性能测试的报文组包模块,包 括读取单元,用于读取至少一个报文样式定义,所述报文样式定义是预先根据被测 系统在测试过程中需要连接的后端系统设定的;组包单元,用于读取通用报文,并根据所述读取单元读取的报文样式定义将通用 报文进行组包以得到响应报文。
根据本发明的第三方面,提供一种在银行系统的性能测试中模拟后端系统发送报 文的方法,包括读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统在测试过程 中需要连接的后端系统设定的;读取通用报文,并根据读取的报文样式定义将通用报文进行组包以得到响应报 文;当接收到被测系统发送的请求报文时,根据所述请求报文从数据库中获取与被测 系统相关的响应报文;根据所述响应报文生成动态报文并将生成的动态报文传送至所述被测系统。根据本发明的第四方面,提供一种性能测试模拟器,包括报文组包模块,用于读取至少一个报文样式定义、通用报文,并根据读取的报文样 式定义将通用报文进行组包以得到响应报文,所述报文样式定义是预先根据被测系统在测 试过程中需要连接的后端系统设定的;数据库,用于存储所述报文组包模块生成的响应报文;获取模块,用于当接收到被测系统发送的请求报文时,根据所述请求报文从数据 库中获取与被测系统相关的响应报文;动态报文生成模块,用于根据所述响应报文生成动态报文并将生成的动态报文传 送至所述被测系统。实施本发明提供的银行系统性能测试中的一种性能测试模拟器、模拟后端系统发 送报文的方法,以及其中的报文组包模块和报文组包方法,通过将通用报文按照至少一种 后端系统的报文样式定义进行组包得到后端系统对应的不同类型的响应报文,实现了通过 一个性能测试模拟器就可以仿真与被测系统对应的多种后端系统,不再需要将被测系统与 对应的多种后端系统进行通信以确保测试过程的顺利进行,给银行的测试工作带来了极大 的方便,且当有新的被测系统出现时,不需要设计新的性能测试模拟器,只需将新增被测系 统对应的后端系统的报文样式定义添加进性能测试模拟器里即可实现,会带来开发周期 短、代码复用程度高、好维护等优点,且降低了开发成本。


图1示出了本发明的一种银行性能测试系统的结构示意图;图2示出了本发明的一种性能测试模拟器23的结构示意图;图3示出了图2中的获取模块233的结构示意图;图4示出了图2中的动态报文生成模块234的结构示意图;图5示出了图2中的报文组包模块231的结构示意图;图6示出了图5中的组包单元2312的结构示意图;图7示出了本发明的一种用于银行系统性能测试的报文组包方法的流程图;图8示出了图7中的步骤S2的第一种实施方式的流程图;图9示出了图7中的步骤S2的第二种实施方式的流程图;图10示出了本发明的一种在银行系统的性能测试中模拟后端系统发送报文的方 法的流程图11示出了图10中的步骤S3的流程图;图12示出了图11中的步骤S4的流程图。
具体实施例方式为使本发明的实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发 明作进一步地详细描述。参考图1,是一种银行性能测试系统的示意图,该测试系统主要包括测试设备21、被测系统22以及如图2所示的本发明提供的一种用于银行系统的性 能测试模拟器23,所述性能测试模拟器23用于在性能测试过程中模拟后端系统向被测系 统22发送报文,通过发送的报文向被测系统22提供各种测试环境以使得通过测试设备21 对被测系统22的各项性能指标进行测试。本发明中的所述后端系统即为在测试过程中,被 测系统后端的应用系统。下面结合附图详细介绍本发明提供的性能测试模拟器23及其内部组成模块。参 考图2,是本发明提供的一种用于银行系统的性能测试模拟器的结构示意图,由图2可知, 性能测试模拟器主要包括报文组包模块231,用于读取至少一个报文样式定义、通用报文,并根据读取的报 文样式定义将通用报文进行组包以得到响应报文,所述报文样式定义是预先根据被测系统 在测试过程中需要连接的后端系统设定的;数据库232,用于存储所述报文组包模块生成的响应报文;获取模块233,用于当接收到被测系统发送的请求报文时,根据所述请求报文从数 据库中获取与被测系统相关的响应报文;动态报文生成模块234,用于根据所述响应报文生成动态报文并将生成的动态报 文传送至所述被测系统。参考图3,是性能测试模拟器中的获取模块233的结构示意图,由图3可知,获取模 块233具体包括接收单元2331,用于接收被测系统发送的请求报文;解析单元2332,用于解析所述接收单元2331接收的请求报文得到所述被测系统 的交易码;获取单元2333,用于根据所述解析单元2332解析得到的交易码从数据库中获取 该交易码对应的交易配置,所述交易配置包括场景配置、生成时间、报文策略,根据所述场 景配置、生成时间、报文策略从数据库中获取与该交易码相关的响应报文。参考图4,是性能测试模拟器中的动态报文生成模块234的结构示意图,由图4可 知,动态报文生成模块234具体包括动态数据判断单元2341,用于判断所述响应报文是否包含动态数据,当判断为是 时,调用第二动态报文处理单元,否则调用第一动态报文处理单元;所述第一动态报文处理单元2342,用于将所述响应报文作为动态报文传送至所述 被测系统;所述第二动态报文处理单元2343,用于判断该动态数据的值是否与请求报文有 关,根据判断结果、响应报文生成动态报文,然后调用传送单元;
所述传送单元2344,用于将生成的动态报文传送至被测系统。其中,第二动态报文处理单元2343具体包括第三判断子单元23431,用于根据所述响应报文在数据库中读取与所述响应报文 里的动态数据中的占位符相关的第一起始位置、第一结束位置以及第一替换策略,根据第 一替换策略判断该动态数据的值是否与请求报文有关,当判断为是时,调用第四替换子单 元,否则调用第三替换子单元;所述第三替换子单元23432,用于遍历所述响应报文,根据第一起始位置、第一 结束位置将响应报文中的占位符替换成第一替换策略指定的动态数据的值以生成动态报 文;所述第四替换子单元23433,用于将所述请求报文进行拆包以得到第一替换策略 指定的动态数据的值,遍历所述响应报文,根据第一起始位置、第一结束位置将响应报文中 的占位符替换成第一替换策略指定的动态数据的值以生成动态报文。第二动态报文处理单元2343还包括第四判断子单元,用于判断所述动态报文是否包含关联长度段;第三输出子单元,用于当第四判断子单元判断为否时,将生成的动态报文传送至 被测系统。第四输出子单元,用于当第四判断子单元判断为是时,在数据库中读取与所述动 态报文相关的第二起始位置、第二结束位置以及第二替换策略,根据第二替换策略计算出 该关联长度段的长度,并根据该关联长度段的第二起始位置、第二结束位置将所述关联长 度段用该长度来替换,将生成的动态报文传送至被测系统。参考图5,是性能测试模拟器23中的报文组包模块231的结构示意图,由图5可 知,报文组包模块231具体包括读取单元2311,用于读取至少一个报文样式定义,所述报文样式定义是预先根据 被测系统在测试过程中需要连接的后端系统设定的;组包单元2312,用于读取通用报文,并根据所述读取单元读取的报文样式定义将 通用报文进行组包以得到响应报文。根据本发明的另一种实施方式,报文组包模块231除了上述模块之外,还包括第一判断单元,用于判断所述响应报文是否包含动态数据;第一输出单元,用于当第一判断单元判断为否时,输出所述响应报文并存储至数 据库中;第二输出单元,用于当第一判断单元判断为是时,输出所述响应报文并存储至数 据库中,同时将记录的第一起始位置、第一结束位置以及第一替换策略、第二起始位置、第 二结束位置、第二替换策略存储至数据库中。参考图6,是组包单元2312的结构示意图,由图6可知,组包单元2312包括第一判断子单元23121,用于判断所述通用报文是否包含动态数据,当判断为是 时,调用第一替换组包子单元,否则调用第一组包子单元;所述第一组包子单元23122,用于遍历通用报文的数据中的每个节点,通过递归的 方式将通用报文的数据中的每个节点按照所述报文样式定义生成响应报文;所述第一替换组包子单元23123,用于使用占位符来替换该动态数据的值,记录该占位符的第一起始位置、第一结束位置以及第一替换策略,然后遍历通用报文的数据中的 每个节点,通过递归的方式将通用报文的数据中的每个节点按照所述报文样式定义生成响 应报文。根据本发明的另一种实施方式,组包单元2312除了上述子单元之外,还包括第二判断子单元,用于判断所述通用报文是否包含关联长度段,当判断为是时,调 用第二替换组包子单元,否则调用第二组包子单元;所述第二组包子单元,用于遍历通用报文的数据中的每个节点,通过递归的方式 将通用报文的数据中的每个节点按照所述报文样式定义生成响应报文;所述第二替换组包子单元,用于记录该关联长度段的第二起始位置、第二结束位 置、第二替换策略,遍历通用报文的数据中的每个节点,通过递归的方式将通用报文的数据 中的每个节点按照所述报文样式定义生成响应报文。根据本发明的另一种实施方式,性能测试模拟器除了上述模块之外,还包括监控模块,用于对性能测试模拟器进行实时监控并生成监控报告;报表模块,用于将所述动态报文进行保存并生成日志报表。相应的,本发明还提供了的一种用于银行系统性能测试的报文组包方法,参考图 7,是本发明提供的一种用于银行系统性能测试的报文组包方法的流程图。由图7可知,所 述方法包括Si,读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统在测试 过程中需要连接的后端系统设定的;具体地,后端系统即是在性能测试过程中向被测系统发送报文,通过发送的报文 向被测系统提供各种测试环境以使得通过测试设备对被测系统的各项性能指标进行测试 的不同系统,后端系统的报文样式定义具体显示了该后端系统所采用的报文类型。此处的 报文样式定义是预先根据该后端系统设定的。S2,读取通用报文,其中,通用报文一般是可扩展标记语言(Extensible Markup Language, XML) 艮文,然后根据读取的报文样式定义将通用报文进行组包以得到响应报文,具体地,根 据步骤Sl中的报文样式定义将该通用报文组包生成与后端系统类型相同的报文即响应报 文。参考图8,是步骤S2的第一种实施方式的流程图。由图8可知,在实施方式一中, 步骤S2包括S211 判断所述通用报文是否包含动态数据,当判断为是时,执行步骤S212,否则 执行步骤S213 ;具体的,在步骤S2读取的通用报文中,一部分预先设定了动态标识,则该部分通 用报文包含动态数据,对于没有设定动态标识的通用报文,即不包含动态数据。S212:使用占位符来替换该动态数据的值,记录该占位符的第一起始位置、第一结 束位置以及第一替换策略,然后执行步骤S213 ;具体的,当通用报文中包含动态数据时,为了后续步骤的顺利进行,此时需要将动 态数据用占位符“PLACEHOLDER”来进行替换。S213:遍历通用报文的数据中的每个节点,通过递归的方式将通用报文的数据中的每个节点按照所述的报文样式定义生成响应报文;该步骤是组包的过程,即将通用报文按照报文样式定义递归生成响应报文,此处 的响应报文即为与报文样式定义类型相同的报文。参考图9,是步骤S2的第二种实施方式的流程图。由图9可知,在实施方式二中, 步骤S2包括S221 判断所述通用报文是否包含动态数据,当判断为是时,执行步骤S222,否则 执行步骤S225 ;具体的,在步骤S2中读取的通用报文中,预先设定了该通用报文是否包含动态数 据。S222:使用占位符来替换该动态数据的值,记录该占位符的第一起始位置、第一结 束位置以及第一替换策略;具体的,当通用报文中包含动态数据时,为了后续步骤的顺利进行,此时需要将动 态数据用占位符“PLACEHOLDER”来进行替换。S223 判断所述通用报文是否包含关联长度段,当判断为是时,执行步骤S224,否 则执行步骤S225 ;具体的,在步骤S222中用占位符将通用报文中的动态数据进行替换之后,由于在 部分通用报文中包含关联长度段,因此需要继续对存在关联长度段的情况做进一步处理。S224:记录该关联长度段的第二起始位置、第二结束位置、第二替换策略,然后执 行步骤S225 ;S225:遍历通用报文的数据中的每个节点,通过递归的方式将通用报文的数据中 的每个节点按照所述的报文样式定义生成响应报文。该步骤是组包的过程,即将通用报文按照的报文样式定义递归生成响应报文,此 处的响应报文即为与报文样式定义类型相同的报文。根据本发明的另一种实施方式,在步骤S2之后,所述一种用于银行系统性能测试 的报文组包方法还包括判断所述响应报文是否包含动态数据;当判断结果为否时,输出所述响应报文并存储至数据库中;当判断结果为是时,输出所述响应报文并存储至数据库中,同时将记录的第一起 始位置、第一结束位置以及第一替换策略、第二起始位置、第二结束位置、第二替换策略存 储至数据库中。由上述可知,本发明提供的一种用于银行系统性能测试的报文组包方法,通过将 通用报文按照多种后端系统的报文样式定义进行组包,即实现了通过同一种报文组包方法 将通用报文转换为多种不同类型的响应报文,且当有新的类型的报文出现时,只需添加新 的报文样式定义即可将通用报文转换为新的类型的报文,将带来开发周期短、代码复用程 度高、好维护等优点。参考图10,是本发明提供的一种在银行系统的性能测试中模拟后端系统发送报文 的方法的流程图,由图10可知,该方法包括Sl 读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统在测试 过程中需要连接的后端系统设定的;报文,并根据读取的报文样式定义将通用报文进行组包以得到响应 报文;上述步骤Si、S2与本发明提供的一种用于银行系统性能测试的报文组包方法中 的步骤Si、S2相同。S3:当接收到被测系统发送的请求报文时,根据所述请求报文从数据库中获取与 被测系统相关的响应报文;S4:根据所述响应报文生成动态报文并将生成的动态报文传送至所述被测系统。参考图11,是步骤S3的具体流程图,由图11可知,步骤S3包括S31 接收被测系统发送的请求报文;S32 解析所述请求报文以得到所述被测系统的交易码;S33:根据所述交易码从数据库中获取该交易码对应的交易配置,所述交易配置包 括场景配置、生成时间、报文策略;S34:根据所述场景配置、生成时间、报文策略从数据库中获取与该交易码相关的 响应报文。参考图12,是步骤S4的流程图,由图12可知,步骤S4具体包括S41 判断所述响应报文是否包含动态数据,当判断为是时,执行步骤S42,否则执 行步骤S46 ;S42:根据所述响应报文在数据库中读取与所述响应报文里的动态数据中的占位 符相关的第一起始位置、第一结束位置以及第一替换策略,根据第一替换策略判断该动态 数据的值是否与请求报文有关,当判断为是时,执行步骤S43,否则执行步骤S44 ;动态数据的生成方式有四种,具体为(1)、日期时间指定日期/时间的格式,动态数据由日期/时间生成;(2)、外部函数指定动态库名称,动态数据由用户自定义的动态库生成;(3)、请求报文指定请求报文的字段,动态数据来源于请求报文中指定的数据字 段;(4)、参数函数指定参数文件名称、列以及选择方式,动态数据由参数文件的某一 列生成。S43:将所述请求报文进行拆包得到第一替换策略指定的动态数据的值,然后执行 步骤S45 ;S44 根据响应报文记录的第一替换策略确定动态数据的值,然后执行步骤S45 ;S45:遍历所述响应报文,根据第一起始位置、第一结束位置将响应报文中的占位 符替换成第一替换策略指定的动态数据的值以生成动态报文;S46 将生成的动态报文传送至被测系统。具体的,当步骤S41的判断为否时,将所述响应报文作为生成的动态报文传送至 被测系统。在本发明的另一种实施方式中,一种在银行系统的性能测试中模拟后端系统发送 报文的方法在步骤S45之后、步骤S46之前还包括判断所述动态报文是否包含关联长度段;当判断为否时,将生成的动态报文传送至被测系统;
12
当判断为是时,在数据库中读取与所述动态报文中的关联长度段相关的第二起始 位置、第二结束位置以及第二替换策略,根据第二替换策略计算出该关联长度段的长度,并 根据该关联长度段的第二起始位置、第二结束位置将所述关联长度段用该长度来替换,然 后将生成的动态报文传送至被测系统。在本发明的另一种实施方式中,一种在银行系统的性能测试中模拟后端系统发送 报文的方法除了上述步骤之外,还包括对用于银行系统的性能测试中模拟后端系统发送报文的方法进行实时监控并生 成监控报告;将所述动态报文进行保存并生成日志报表。监控报告以及日志报表的建立方便了后续查看、统计。综上所述,实施本发明提供了银行系统性能测试中的一种性能测试模拟器、性能 测试中模拟后端系统发送报文的方法,以及其中的报文组包模块和报文组包方法,通过将 通用报文按照多种后端系统的报文样式定义进行组包得到后端系统对应的不同类型的响 应报文,实现了通过一个性能测试模拟器就可以仿真与被测系统对应的多种后端系统,将 不再需要将被测系统与对应的多种后端系统进行通信以确保测试过程的顺利进行,给银行 的测试工作带来了极大的方便,且当有新的被测系统出现时,不需要设计新的性能测试模 拟器,只需将新增被测系统对应的后端系统的报文样式定义添加进性能测试模拟器里即可 实现,将带来开发周期短、代码复用程度高、好维护等优点,且降低开发成本。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助 软件结合硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发 明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计 算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一 台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者 实施例的某些部分所述的方法。以上所公开的仅为本发明的具体实施方式
,仅用于对本发明进行举例说明,不能 以此限定本发明之保护范围,本领域技术人员在不脱离本发明实质的前提下可以进行各种 修改、变化或替换,因此,依照本发明所作的各种等同变化,仍属于本发明所涵盖的范围。
权利要求
一种用于银行系统性能测试的报文组包方法,其特征在于,包括读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统在测试过程中需要连接的后端系统设定的;读取通用报文,并根据读取的报文样式定义将通用报文进行组包以得到响应报文。
2.根据权利要求1所述的方法,其特征在于,根据读取的报文样式定义将通用报文进 行组包以得到响应报文包括A 判断所述通用报文是否包含动态数据,当判断为是时,执行步骤B,否则执行步骤C ; B:使用占位符来替换该动态数据的值,记录该占位符的第一起始位置、第一结束位置 以及第一替换策略,然后执行步骤C ;C:遍历通用报文的数据中的每个节点,通过递归的方式将通用报文的数据中的每个节 点按照所述报文样式定义生成响应报文。
3.根据权利要求2所述的方法,其特征在于,该方法在步骤B之后、步骤C之前还包括 D 判断所述通用报文是否包含关联长度段,当判断为是时,执行步骤E,否则执行步骤C;E 记录该关联长度段的第二起始位置、第二结束位置、第二替换策略,然后执行步骤C0
4.根据权利要求3所述的方法,其特征在于,所述方法在步骤C之后还包括 判断所述响应报文是否包含动态数据;当判断结果为否时,输出所述响应报文并存储至数据库中;当判断结果为是时,输出所述响应报文并存储至数据库中,同时将记录的第一起始位 置、第一结束位置以及第一替换策略、第二起始位置、第二结束位置、第二替换策略存储至 数据库中。
5.一种在银行系统的性能测试中模拟后端系统发送报文的方法,其特征在于,包括 读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统在测试过程中需要连接的后端系统设定的;读取通用报文,并根据读取的报文样式定义将通用报文进行组包以得到响应报文; 当接收到被测系统发送的请求报文时,根据所述请求报文从数据库中获取与被测系统 相关的响应报文;根据所述响应报文生成动态报文并将生成的动态报文传送至所述被测系统。
6.根据权利要求5所述的方法,其特征在于,根据所述请求报文从数据库中获取与被 测系统相关的响应报文包括解析所述请求报文得到所述被测系统的交易码;根据所述交易码从数据库中获取与该交易码相关的响应报文。
7.根据权利要求6所述的方法,其特征在于,根据所述交易码从数据库中获取与该交 易码相关的响应报文包括根据所述交易码从数据库中获取该交易码对应的交易配置,所述交易配置包括场景配 置、生成时间、报文策略;根据所述场景配置、生成时间、报文策略从数据库中获取与该交易码相关的响应报文。
8.根据权利要求5所述的方法,其特征在于,根据所述响应报文生成动态报文并将生成的动态报文传送至所述被测系统包括A 判断所述响应报文是否包含动态数据,当判断为是时,执行步骤B,否则执行步骤D ; B:判断该动态数据的值是否与请求报文有关,根据判断结果、响应报文生成动态报文, 然后执行步骤C ;C 将生成的动态报文传送至被测系统 D 将所述响应报文作为动态报文传送至所述被测系统。
9.根据权利要求8所述方法,其特征在于,步骤B具体包括Bl 根据所述响应报文在数据库中读取与所述响应报文里的动态数据中的占位符相关 的第一起始位置、第一结束位置以及第一替换策略;B2 根据第一替换策略判断该动态数据的值是否与请求报文有关,当判断为是时,执行 步骤B4,否则执行步骤B3 ;B3 遍历所述响应报文,根据第一起始位置、第一结束位置将响应报文中的占位符替换 成第一替换策略指定的动态数据的值以生成动态报文;B4:将所述请求报文进行拆包得到第一替换策略指定的动态数据的值,返回执行步骤B3。
10.根据权利要求8所述的方法,其特征在于,所述方法在步骤B之后、步骤C之前还包括判断所述动态报文是否包含关联长度段; 当判断为否时,直接执行步骤C;当判断为是时,在数据库中读取与所述动态报文中的关联长度段相关的第二起始位 置、第二结束位置以及第二替换策略,根据第二替换策略计算出该关联长度段的长度,并根 据该关联长度段的第二起始位置、第二结束位置将所述关联长度段用该长度来替换,然后 执行步骤C。
11.根据权利要求5至10中任意一项所述的方法,其特征在于,所述方法还包括 对用于银行系统的性能测试中模拟后端系统发送报文的方法进行实时监控并生成监控报告;将所述动态报文进行保存并生成日志报表。
12. 一种用于银行系统性能测试的报文组包模块,其特征在于,包括读取单元,用于读取至少一个报文样式定义,所述报文样式定义是预先根据被测系统 在测试过程中需要连接的后端系统设定的;组包单元,用于读取通用报文,并根据所述读取单元读取的报文样式定义将通用报文 进行组包以得到响应报文。
13.根据权利要求12所述的模块,其特征在于,所述组包单元包括第一判断子单元,用于判断所述通用报文是否包含动态数据,当判断为是时,调用第一 替换组包子单元,否则调用第一组包子单元;所述第一组包子单元,用于遍历通用报文的数据中的每个节点,通过递归的方式将通 用报文的数据中的每个节点按照所述报文样式定义生成响应报文;所述第一替换组包子单元,用于使用占位符来替换该动态数据的值,记录该占位符的 第一起始位置、第一结束位置以及第一替换策略,然后遍历通用报文的数据中的每个节点,通过递归的方式将通用报文的数据中的每个节点按照所述报文样式定义生成响应报文。
14.根据权利要求13所述的模块,其特征在于,所述组包单元还包括第二判断子单元,用于判断所述通用报文是否包含关联长度段,当判断为是时,调用第 二替换组包子单元,否则调用第二组包子单元;所述第二组包子单元,用于遍历通用报文的数据中的每个节点,通过递归的方式将通 用报文的数据中的每个节点按照所述报文样式定义生成响应报文;所述第二替换组包子单元,用于记录该关联长度段的第二起始位置、第二结束位置、第 二替换策略,遍历通用报文的数据中的每个节点,通过递归的方式将通用报文的数据中的 每个节点按照所述报文样式定义生成响应报文。
15.根据权利要求12所述的模块,其特征在于,所述模块还包括 第一判断单元,用于判断所述响应报文是否包含动态数据;第一输出单元,用于当第一判断单元判断为否时,输出所述响应报文并存储至数据库中;第二输出单元,用于当第一判断单元判断为是时,输出所述响应报文并存储至数据库 中,同时将记录的第一起始位置、第一结束位置以及第一替换策略、第二起始位置、第二结 束位置、第二替换策略存储至数据库中。
16.一种用于银行系统的性能测试模拟器,其特征在于,包括报文组包模块,用于读取至少一个报文样式定义、通用报文,并根据读取的报文样式定 义将通用报文进行组包以得到响应报文,所述报文样式定义是预先根据被测系统在测试过 程中需要连接的后端系统设定的;数据库,用于存储所述报文组包模块生成的响应报文;获取模块,用于当接收到被测系统发送的请求报文时,根据所述请求报文从数据库中 获取与被测系统相关的响应报文;动态报文生成模块,用于根据所述响应报文生成动态报文并将生成的动态报文传送至 所述被测系统。
17.根据权利要求16所述的模拟器,其特征在于,所述获取模块包括 接收单元,用于接收被测系统发送的请求报文;解析单元,用于解析所述接收单元接收的请求报文得到所述被测系统的交易码; 获取单元,用于根据所述解析单元解析得到的交易码从数据库中获取该交易码对应 的交易配置,所述交易配置包括场景配置、生成时间、报文策略,根据所述场景配置、生成时 间、报文策略从数据库中获取与该交易码相关的响应报文。
18.根据权利要求16所述的模拟器,其特征在于,所述动态报文生成模块包括动态数据判断单元,用于判断所述响应报文是否包含动态数据,当判断为是时,调用第 二动态报文处理单元,否则调用第一动态报文处理单元;所述第一动态报文处理单元,用于将所述响应报文作为动态报文传送至所述被测系统;所述第二动态报文处理单元,用于判断该动态数据的值是否与请求报文有关,根据判 断结果、响应报文生成动态报文,然后调用传送单元;所述传送单元,用于将生成的动态报文传送至被测系统。
19.根据权利要求18所述的模拟器,其特征在于,所述第二动态报文处理单元包括 第三判断子单元,用于根据所述响应报文在数据库中读取与所述响应报文里的动态数据中的占位符相关的第一起始位置、第一结束位置以及第一替换策略,根据第一替换策略 判断该动态数据的值是否与请求报文有关,当判断为是时,调用第四替换子单元,否则调用第三替换子单元;所述第三替换子单元,用于遍历所述响应报文,根据第一起始位置、第一结束位置将响 应报文中的占位符替换成第一替换策略指定的动态数据的值以生成动态报文;所述第四替换子单元,用于将所述请求报文进行拆包得到第一替换策略指定的动态数 据的值,遍历所述响应报文,根据第一起始位置、第一结束位置将响应报文中的占位符替换 成第一替换策略指定的动态数据的值以生成动态报文。
20.根据权利要求19所述的模拟器,其特征在于,所述第二动态报文处理单元还包括 第四判断子单元,用于判断所述动态报文是否包含关联长度段;第三输出子单元,用于当第四判断子单元判断为否时,将生成的动态报文传送至被测 系统。第四输出子单元,用于当第四判断子单元判断为是时,在数据库中读取与所述动态报 文中的关联长度段相关的第二起始位置、第二结束位置以及第二替换策略,根据第二替换 策略计算出该关联长度段的长度,并根据该关联长度段的第二起始位置、第二结束位置将 所述关联长度段用该长度来替换,将生成的动态报文传送至被测系统。
21.根据权利要求16至20中任意一项所述的模拟器,其特征在于,所述模拟器还包括监控模块,用于对性能测试模拟器进行实时监控并生成监控报告; 报表模块,用于将所述动态报文进行保存并生成日志报表。
全文摘要
本发明公开了银行系统性能测试中的一种性能测试模拟器、模拟后端系统发送报文的方法,以及其中的报文组包模块和报文组包方法。其中,一种用于银行系统性能测试的报文组包方法,包括读取至少一个报文样式定义;读取通用报文,并根据读取的报文样式定义将通用报文进行组包以得到响应报文。实施本发明的银行系统性能测试中的一种性能测试模拟器、模拟后端系统发送报文的方法,以及其中的报文组包模块和报文组包方法,通过将通用报文按照多种后端系统的报文样式定义进行组包得到后端系统对应的不同类型的响应报文,实现了通过一个性能测试模拟器就可以仿真与被测系统对应的多种后端系统,给银行的测试工作带来了极大的方便。
文档编号H04L12/26GK101917312SQ201010272230
公开日2010年12月15日 申请日期2010年9月1日 优先权日2010年9月1日
发明者孙秀明, 张同虎, 徐红熙, 成银乾, 李冬晓, 李蒙, 杨斌, 王杰, 贾钦荣, 高洁 申请人:中国建设银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1