应用于金融领域的测试脚本生成方法和装置的制造方法
【技术领域】
[0001]本发明涉及金融系统软件测试技术领域,特别涉及应用于金融领域的测试脚本生成方法和装置。
【背景技术】
[0002]随着全球金融业务的不断扩展,中国的银行系统的IT总体架构也在发生变化。银行系统的稳健性、可靠性和可维护性越来越受重视。因此,软件测试的重要性也越发凸显。
[0003]目前,软件测试不仅包括功能指标测试,还包括非功能指标(例如响应时间和并发性)测试。目前,能够进行软件测试的工具有多种,例如,惠普公司发布的Load Runner性能测试工具,其可通过模拟实际用户的操作行为,实施并发负载及性能监测的方式,来获取待测软件系统的非功能性指标。
[0004]目前脚本的开发的方式主要依赖于测试人员,即测试人员根据集成平台测试脚本的语法语义规范,选择不同的协议进行脚本的开发。发明人在实施本发明创造的过程中,发现现有的脚本开发方式人工参与度较高,从而导致一系列问题,例如:准确性依赖于测试人员的专业素质,测试人员需要学习并掌握目标测试工具(例如Load Runner)的脚本开发规范,并熟知多种脚本接口与多种通信协议之间的对应关系;速度慢导致开发时间过长,且容易出错。
【发明内容】
[0005]有鉴于此,本发明提供了一种应用于金融领域的测试脚本生成方法和装置,以减少人工参与度,从而降低对测试人员的专业依赖程度,并缩短脚本开发过程。
[0006]为实现上述目的,本发明提供如下技术方案:
[0007]一种应用于金融领域的测试脚本生成方法,包括:
[0008]获取匹配用户所指定交易码的交易报文,该报文由数据字典中对应该交易码的交易相关数据组合形成,所述交易相关数据用于描述完成所述交易码所指定交易的规则和内容;
[0009]从多种协议脚本配置文件中选择与用户所指定协议相匹配的协议脚本配置文件;
[0010]组合所述交易报文、协议脚本配置文件以形成与用户所指定协议相匹配的协议脚本;
[0011]将所述协议脚本转换为具有目标测试工具的测试脚本文件属性的测试脚本。
[0012]在研究上述技术方案的过程中,发明人通过对各种协议的测试脚本的结构进行详细分析,把不同协议的测试脚本均分为有共性部分和差异化部分,将其中所述有共性部分抽象为交易报文,将其中差异化部分为抽象为协议脚本配置文件。即将测试脚本的生成过程分为:交易报文获取过程,协议交配配置文件选择过程和测试脚本产生过程。每个过程均可由电子设备自动执行,即:通过预先设置的数据字典匹配各种交易行为,能够针对用户随机输入的交易码确定出对应的交易相关数据,并根据交易相关数据组成所述交易报文;以及,根据用户指定的协议,选择与该协议相适配的协议脚本配置文件;以及,组合所述交易报文、协议脚本配置文件以形成与用户所指定协议相匹配的协议脚本;以及,根据目标测试工具的测试脚本属性,将所述协议脚本转换为具有目标测试工具的测试脚本文件属性的测试脚本。可以看出,本申请实施例人工参与程度较低,只需指定交易码和协议,其他步骤均可由电子设备自行运作,具有以下特点或优点:
[0013]1、可靠性较高
[0014]由于无需过多人工参与,因此其准确性无需依赖于测试人员的专业素质和工作态度,出错概率较小;
[0015]2、开发成本较低
[0016]测试人员只需指定交易码和协议,无需学习并掌握目标测试工具(例如LoadRunner)的脚本开发规范,也无需熟知多种脚本接口与多种通信协议之间的对应关系。
[0017]3、开发速度较高
[0018]开发过程主要由机器自动操作,速度较快。
[0019]优选的,上述方案可按照以下步骤获取匹配用户所指定交易码的交易报文:
[0020]接收交易码;
[0021]从预设数据字典中读取匹配该交易码的交易相关数据,所述交易相关数据用于描述完成所述交易码所指定交易的规则及内容;
[0022]组合所述交易相关数据形成所述交易报文。
[0023]优选的,上述方案中,所述交易相关数据至少包括接口规范、报文字段和通用域字段。
[0024]优选的,上述方案中,所述交易相关数据还包括:数据库字段映射关系,用于指示交易报文中的字段与所述数据库中的数据集合的对应关系;
[0025]在所述组合所述交易相关数据形成交易报文后,所述方法还包括:
[0026]参考所述数据库字段映射关系,从数据库中确定数据集合,对所述交易报文中待参数化字段进行参数化处理。
[0027]优选的,上述方案中,所述目标测试工具为Load Runner,所述交易报文为XML报文,所述具有目标测试工具的测试脚本文件属性的测试脚本包括:脚本初始化部分、脚本头部和脚本实体,其中:
[0028]脚本头部包括脚本的注释信息,该注释信息由XML报文和脚本配置文件中的参数字段组合形成;
[0029]所述脚本实体由存储于API接口参数内的XML报文和从脚本配置文件中获取的脚本模板基础元素生成。
[0030]优选的,上述方案还包括报文语法语义验证过程、交易连通调试过程和配置报文注释过程中的任意一个或者任意组合,其中:
[0031 ] 所述报文语法语义验证过程包括:
[0032]对所述测试报文进行语法和语义方面的验证,在验证不通过时,发出提示信息;
[0033]所述交易连通调试过程包括:
[0034]向承载所述目标测试工具的服务器发出连接请求以建立连接,若连接失败,返回交易失败字符,否则,发送测试脚本;以及,判断发送是否成功,若是,则监听并接收返回报文,否则,返回交易失败字符;以及,通过所述返回报文判断交易是否成功,若是,返回交易成功字符,否则,返回交易失败字符;
[0035]所述配置报文注释过程包括:
[0036]配置报文注释,以提高测试脚本的可读性。
[0037]本申请同时还提供一种应用于金融领域的测试脚本生成装置,以实现上述测试脚本生成方法,该装置包括:
[0038]交易报文获取单元,用于获取匹配用户所指定交易码的交易报文,该报文由数据字典中对应该交易码的交易相关数据组合形成,所述交易相关数据用于描述完成所述交易码所指定交易的规则和内容;
[0039]配置文件选取单元,用于从多种协议脚本配置文件中选择与用户所指定协议相匹配的协议脚本配置文件;
[0040]协议脚本生成单元,用于组合所述交易报文、协议脚本配置文件以形成与用户所指定协议相匹配的协议脚本;
[0041]脚本转换单元,用于将所述协议脚本转换为具有目标测试工具的测试脚本文件属性的测试脚本。
[0042]优选的,上述装置还包括参数化单元,用于参数化所述交易报文。
[0043]优选的,上述装置还包括报文语法语义验证单元、交易连通调试单元和配置报文注释单元中的任意一个或者任意组合,其中:
[0044]所述报文语法语义验证单元用于:对所述测试报文进行语法和语义方面的验证,在验证不通过时,发出提示信息;
[0045]所述交易连通调试单元用于:向承载所述目标测试工具的服务器发出连接请求以建立连接,若连接失败,返回交易失败字符,否则,发送测试脚本;以及,判断发送是否成功,若是,则监听并接收返回报文,否则,返回交易失败字符;以及,通过所述返回报文判断交易是否成功,若是,返回交易成功字符,否则,返回交易失败字符;
[0046]所述配置报文注释单元用于:配置报文注释,以提高测试脚本的可读性。
[0047]优选的,上述装置中,所述目标测试工具为Load Runner,所述交易报文为XML报文,所述具有目标测试工具的测试脚本文件属性的测试脚本包括:脚本初始化部分、脚本头部和脚本实体,其中:
[0048]脚本头部包括脚本的注释信息,该注释信息由XML报文和脚本配置文件中的参数字段组合形成;<