测试数据构造方法、装置、计算机设备和存储介质与流程

文档序号:18642288发布日期:2019-09-11 23:36阅读:152来源:国知局
本申请涉及测试
技术领域
:,特别是涉及一种测试数据构造方法、装置、计算机设备和存储介质。
背景技术
::对于一个开发的软件系统,在进行应用之前均会进行相应的测试,当各项技术指标达到要求时进行实际的应用。在对软件系统进行自动化测试或性能测试过程中,需要用到大量的测试数据才能完成各项测试任务,因此测试数据的制作成为一个重要且必要的环节。在传统测试中,主要采用手动操作方式来构造测试数据,例如,若测试交易系统在升级后的影响,采用手动操作方式时,测试人员在交易系统的产品页面进行下单操作来生成测试数据。然而,采用手动操作方式构造测试数据,耗时长且容易受环境因素影响,从而影响测试效率。技术实现要素:基于此,有必要针对上述技术问题,提供一种能够快速构造出测试数据以提高测试效率的测试数据构造方法、装置、计算机设备和存储介质。一种测试数据构造方法,所述方法包括:接收在数据构造工具的配置页面所触发的文件获取指令;获取与所述文件获取指令对应的数据配置文件,并输入至所述数据构造工具;所述数据配置文件中配置有字段名和待测数据;通过所述数据构造工具根据所述数据配置文件生成包含有sql插入语句的数据插入脚本;运行所述数据插入脚本中各sql插入语句,当所述待测数据属于常数型数据时,将所述sql插入语句指定的所述待测数据作为测试数据插入数据库。在其中一个实施例中,所述方法还包括:检测在数据构造工具的配置页面所触发的数据库选择指令;从所述数据构造工具所提供的候选数据库中选取与所述数据库选择指令对应的数据库和所述数据库对应的版本;获取与所述数据库对应的连接脚本,运行所述连接脚本以连接所述数据库,以便将所述待测数据作为测试数据插入所连接的数据库。在其中一个实施例中,所述方法还包括:判断所述待测数据所归属的数据类型;当所述待测数据属于函数型数据时,根据所述待测数据调用对应的函数;根据所调用的函数获得目标数据,将所述目标数据确定为测试数据;通过所述数据插入脚本中sql插入语句将所述测试数据插入所述数据库。在其中一个实施例中,所述通过所述数据构造工具根据所述数据配置文件生成包含有sql插入语句的数据插入脚本包括:通过所述数据构造工具读取所述数据配置文件中的字段名;当所读取的字段名不为空值时,按照所读取的字段名获取对应的待测数据;在校验所读取的待测数据不为空值,根据所读取的待测数据生成包含有sql插入语句的数据插入脚本。在其中一个实施例中,所述数据配置文件中还配置有表结构信息;所述将所述sql插入语句指定的所述待测数据作为测试数据插入数据库包括:判断所述配置文件中的表结构信息是否为空值信息;若表结构信息为空值信息时,则将所述sql插入语句指定的所述数据配置文件中的各测试数据作为测试数据插入数据库;若表结构信息不为空值信息时,则按照字段名读取对应的待测数据,通过所述sql插入语句将读取的待测数据作为测试数据插入数据库。在其中一个实施例中,所述将所述sql插入语句指定的所述待测数据作为测试数据插入数据库包括:接收在所述配置页面所触发的数据构造指令;响应于所述数据构造指令,检查所述配置页面中的必填项是否输入符合预设条件的信息;当所述必填项输入符合预设条件的信息时,将所述sql插入语句指定的所述待测数据作为测试数据插入数据库,并输出表示数据是否成功插入数据库的提示信息。在其中一个实施例中,所述测试数据包括订单请求数据;所述还包括:调用交易系统的支付接口;根据所述付接口对所述订单请求数据进行支付处理获得订单数据;记录对所述订单请求数据进行支付处理的处理时长,以根据所述处理时长确定所述交易系统的支付性能;以及,将所述订单数据与预设订单数据进行对比;根据对比所得的结果生成测试报告,以根据所述测试报告确定所述交易系统的支付功能是否出现异常。一种测试数据构造装置,所述装置包括:文件获取模块,用于调用数据构造工具获取数据配置文件;所述数据配置文件配置有待测数据;脚本生成模块,用于通过所述数据构造工具通过所述数据构造工具根据所述数据配置文件生成包含有sql插入语句的数据插入脚本;所述sql插入语句用于将待测数据插入数据库;数据插入模块,用于执行所述数据插入脚本,以在所述待测数据属于常数型数据时,将所述sql插入语句指定的所述待测数据作为测试数据插入数据库。在其中一个实施例中,所述装置还包括:数据库连接模块;其中:数据库连接模块,用于检测在数据构造工具的配置页面所触发的数据库选择指令;从所述数据构造工具所提供的候选数据库中选取与所述数据库选择指令对应的数据库和所述数据库对应的版本;获取与所述数据库对应的连接脚本,运行所述连接脚本以连接所述数据库,以便将所述待测数据作为测试数据插入所连接的数据库。在其中一个实施例中,所述数据插入模块还用于:判断所述待测数据所归属的数据类型;当所述待测数据属于函数型数据时,根据所述待测数据调用对应的函数;根据所调用的函数获得目标数据,将所述目标数据确定为测试数据;通过所述数据插入脚本中sql插入语句将所述测试数据插入所述数据库。在其中一个实施例中,所述脚本生成模块还用于:通过所述数据构造工具读取所述数据配置文件中的字段名;当所读取的字段名不为空值时,按照所读取的字段名获取对应的待测数据;在校验所读取的待测数据不为空值,根据所读取的待测数据生成包含有sql插入语句的数据插入脚本。在其中一个实施例中,所述数据配置文件中还配置有表结构信息;所述数据插入模块还用于:判断所述配置文件中的表结构信息是否为空值信息;若表结构信息为空值信息时,则将所述sql插入语句指定的所述数据配置文件中的各测试数据作为测试数据插入数据库;若表结构信息不为空值信息时,则按照字段名读取对应的待测数据,通过所述sql插入语句将读取的待测数据作为测试数据插入数据库。在其中一个实施例中,所述数据插入模块还用于:接收在所述配置页面所触发的数据构造指令;响应于所述数据构造指令,检查所述配置页面中的必填项是否输入符合预设条件的信息;当所述必填项输入符合预设条件的信息时,将所述sql插入语句指定的所述待测数据作为测试数据插入数据库,并输出表示数据是否成功插入数据库的提示信息。在其中一个实施例中,所述测试数据包括订单请求数据;所述装置还包括:测试模块;其中:测试模块,用于调用交易系统的支付接口;根据所述付接口对所述订单请求数据进行支付处理获得订单数据;记录对所述订单请求数据进行支付处理的处理时长,以根据所述处理时长确定所述交易系统的支付性能;以及,将所述订单数据与预设订单数据进行对比;根据对比所得的结果生成测试报告,以根据所述测试报告确定所述交易系统的支付功能是否出现异常。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:接收在数据构造工具的配置页面所触发的文件获取指令;获取与所述文件获取指令对应的数据配置文件,并输入至所述数据构造工具;所述数据配置文件中配置有字段名和待测数据;通过所述数据构造工具根据所述数据配置文件生成包含有sql插入语句的数据插入脚本;运行所述数据插入脚本中各sql插入语句,当所述待测数据属于常数型数据时,将所述sql插入语句指定的所述待测数据作为测试数据插入数据库。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:接收在数据构造工具的配置页面所触发的文件获取指令;获取与所述文件获取指令对应的数据配置文件,并输入至所述数据构造工具;所述数据配置文件中配置有字段名和待测数据;通过所述数据构造工具根据所述数据配置文件生成包含有sql插入语句的数据插入脚本;运行所述数据插入脚本中各sql插入语句,当所述待测数据属于常数型数据时,将所述sql插入语句指定的所述待测数据作为测试数据插入数据库。上述测试数据构造方法、装置、计算机设备和存储介质,通过在数据构造工具的配置页面输入数据配置文件,便可快速地获取到数据配置文件中的待测数据。根据数据配置文件来生成包含有sql插入语句的数据插入脚本,通过运行该数据插入脚本,将数据配置文件中的待测数据作为测试数据插入数据库,由于待测数据已预先进行设置,因此可以快速获取到测试数据,有效地提高测试效率。而且,由于数据插入脚本是根据数据配置文件生成,即便系统升级改造或接口升级改造,均无需测试人员重新编写脚本,进一步提高了测试效率。附图说明图1为一个实施例中测试数据构造方法的应用场景图;图2为一个实施例中测试数据构造方法的流程示意图;图3为一个实施例中根据表结构信息确定作为插入数据库的待测数据步骤的流程示意图;图4为一个实施例中测试数据构造装置的结构框图;图5为另一个实施例中测试数据构造装置的结构框图;图6为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请提供的测试数据构造方法,可以应用于如图1所示的应用环境中。其中,终端102与服务器104通过网络进行通信。服务器104接收终端102发送的文件获取指令;调用数据构造工具获取数据配置文件;数据配置文件配置有待测数据;通过数据构造工具通过数据构造工具根据数据配置文件生成包含有sql插入语句的数据插入脚本;sql插入语句用于将待测数据插入数据库;执行数据插入脚本,以在待测数据属于常数型数据时,将sql插入语句指定的待测数据作为测试数据插入数据库。此外,测试数据构造方法也可以应用于终端102。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。在一个实施例中,如图2所示,提供了一种测试数据构造方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:s202,调用数据构造工具获取数据配置文件;数据配置文件配置有待测数据。其中,数据配置文件中配置有字段名和待测数据,可以通过字段名获取对应的待测数据。数据配置文件可以是表格形式的文件,也可以是xml(extensiblemarkuplanguage,可扩展标记语言)格式或json(javascriptobjectnotation,js对象简谱)格式的文件。在后续实施例中,以表格形式的数据配置文件为例进行阐述。字段名可以包括待测数据的名称和用户字段名,通过字段名可以查找到对应类型的待测数据和对应的用户标识。待测数据包括常数型数据和函数型数据。常数型数据可以是直接用做测试数据插入数据库。函数型数据可以是表示函数名称或函数关键字的数据,根据该函数型数据可以查找到对应的函数,通过该函数来返回对应的目标数据,将该目标数据作为测试数据插入数据库中。数据构造工具可以是与测试系统关联的用于构造测试数据的数据构造系统,该数据构造工具可以由服务器进行调用以进行测试数据的构造。对应的,终端可以展示数据构造工作的配置页面,在数据构造工具的配置页面中,可以配置需要连接的数据库、对应的数据库版本、连接地址、端口号、用户名和密码等,此外,在该配置页面中还可以上传数据配置文件至服务器。在一个实施例中,服务器接收由终端发送的文件获取指令,然后调用数据构造工具获取数据配置文件。在一个实施例中,在进行测试之前,终端展示数据构造工具的配置页面,并实时检测用户在数据构造工具的配置页面上发起文件获取操作,当检测到文件获取操作时,生成对应的文件获取指令,将生成的文件获取指令发送给服务器。作为接收端,服务器接收终端发送的文件获取指令,然后调用数据构造工具,以便通过调用的构造工具按照文件获取指令获取数据配置文件。在一个实施例中,服务器保存有多个数据配置文件。服务器根据接收的文件获取指令确定待测任务,该待测任务为被测系统的测试任务(如测试交易系统的交易报文、或交易系统升级后的性能等),服务器根据该待测任务选取对应的数据配置文件。在另一个实施例中,文件获取指令中携带有待测任务,服务器从文件获取指令提取待测任务,根据该待测任务选取对应的数据配置文件。s204,通过数据构造工具通过数据构造工具根据数据配置文件生成包含有sql插入语句的数据插入脚本;sql插入语句用于将待测数据插入数据库。其中,数据插入脚本可以是一种包含有sql插入语句的计算机程序,通过运行该数据插入脚本,在运行数据插入脚本时各sql插入语句被执行,可以按照所执行的sql插入语句将对应的待测数据插入操作。在一个实施例中,服务器通过数据构造工具读取数据配置文件中的字段名;当所读取的字段名不为空值时,按照所读取的字段名获取对应的待测数据;在校验所读取的待测数据不为空值,根据所读取的待测数据生成包含有sql插入语句的数据插入脚本。在一个实施例中,服务器确定待测数据样本,按照待测数据样本设置数据配置文件的文件名和字段名,此外还设置数据配置文件的表结构信息。服务器从预先设置的候选待测数据中获取目标的待测数据,并将待测数据录入数据配置文件中,得到具有文件名、字段名、表结构信息和对应的待测数据的数据配置文件;或者,可以得到具有文件名、字段名和对应的待测数据的数据配置文件。在一个实施例中,服务器对文件名、字段名、表结构信息以及对应的待测数据进行封装,在封装的代码中对文件名、字段名、表结构信息以及对应的待测数据这些字段进行参数化。当调用所封装的代码时,服务器按照数据配置文件中的字段名读取数据配置文件中的待测数据并进行校验,校验通过后按照读取到的待测数据生成包含有sql插入语句的数据插入脚本。例如,对excel配置文件配置表名称、字段名、表结构信息以及对应的待测数据,用户在配置页面上传excel配置文件,可以对excel配置文件的表名称、字段名、表结构信息以及对应的待测数据进行读取和校验。s206,执行数据插入脚本,以在待测数据属于常数型数据时,将sql插入语句指定的待测数据作为测试数据插入数据库。其中,上述的数据库可以是关系型数据库,如oracle、mysql、postgre等数据库。在一个实施例中,待测数据的配置支持常数配置方式和变量配置方式两种。当采用常数配置方式时,则待测数据为常数型数据,对于s208,服务器可以直接从数据配置文件中读取待测数据,然后通过执行该数据插入脚本中的各sql插入语句将读取的待测数据插入数据库。当配置方式为变量配置方式时,则待测数据为函数型数据,对于s208,服务器可以从数据配置文件中读取待测数据,然后根据待测数据查找对应的函数,然后调用函数计算得到具体的值,通过执行数据插入脚本中的各sql插入语句将计算所得的值插入数据库,将插入数据库后的值确定为测试数据,从而实现了测试数据的构建。在进行测试时,直接从数据库中获取测试数据即可。例如,若配置方式为常数“aa”、“111”和“112”,则将“aa”、“111”和“112”直接代入“insertintotablename(列1,列2,列3…)values(值1,值2,值3…)”这sql插入语句中的“值1”、“值2”和“值3”中。若配置方式为变量配置方式(即配置函数型数据${aaa(3)})时,需要事先写好aaa(n)函数。在配置文件中将待测数据值配置为函数名(即aaa(n)),根据函数名查找对应的函数,然后调用该函数计算返回具体的值,病将返回的值传入“insertintotablename(列1,列2,列3…)values(值1,值2,值3…)”语句中的“值1”、“值2”和“值3”等。如根据配置文件的变量无法查到对应的函数,则提示用户“xx函数解析失败,请检查是否存在该函数”。在一个实施例中,服务器检测在数据构造工具的配置页面所触发的数据库选择指令;从数据构造工具所提供的候选数据库中选取与数据库选择指令对应的数据库和数据库对应的版本;获取与数据库对应的连接脚本,运行连接脚本以连接数据库,以便将待测数据作为测试数据插入所连接的数据库。在一个实施例中,服务器判断待测数据所归属的数据类型;当待测数据属于函数型数据时,根据待测数据调用对应的函数;根据所调用的函数获得目标数据,将目标数据确定为测试数据;通过数据插入脚本中sql插入语句将测试数据插入数据库。在一个实施例中,当在数据构造工具中构造测试数据后,测试系统可以利用该测试数据进行测试。在一个实施例中,测试数据可以是单请求数据;s208之后,该方法还可以包括:调用交易系统的支付接口;根据付接口对订单请求数据进行支付处理获得订单数据;记录对订单请求数据进行支付处理的处理时长,以根据处理时长确定交易系统的支付性能;以及,将订单数据与预设订单数据进行对比;根据对比所得的结果生成测试报告,以根据测试报告确定交易系统的支付功能是否出现异常。作为一个示例,如测试交易系统支付模块的功能,跳过用户下订单操作,直接将包含有待测数据的订单表输入数据构造工具,用来构造测试数据以测试支付功能,无需通过页面或接口创建用户和对应的订单。在配置页面选择数据库oracle,版本号为11g,输入数据库服务器的ip和端口号以及连接使用的用户名和密码,分别导入excel配置文件,点击配置页面上的生成按钮,调用后台,通过执行sql插入语句脚本中的各sql插入语句将交易请求插入数据库,如此便构造了测试数据,根据配置生成了对应的用户和订单数据。在测试环境使用该用户登录,选择该订单进行支付测试,从而跳过前置步骤的影响,大大提高测试效率。需要说明的是,该订单数据是测试数据构造工具模拟用户下订单而产生的交易请求所形成的,数据的合理性和有效性取决于用户的数据配置。在一个实施例中,服务器接收在配置页面所触发的数据构造指令;响应于数据构造指令,检查配置页面中的必填项是否输入符合预设条件的信息;当必填项输入符合预设条件的信息时,将sql插入语句指定的待测数据作为测试数据插入数据库,并输出表示数据是否成功插入数据库的提示信息。例如,当用户在配置页面上点击生成按钮时,服务器检查配置页面的必填信息是否为空,数据配置文件是否导入并解析成功,若必填信息完整且数据配置文件解析成功,则调用后台代码触发数据构造指令。服务器响应该数据构造指令,运行数据插入脚本中的各sql插入语句,将从数据配置文件中读取的待测数据值插入数据库,生成用于表示数据是否成功插入数据库的提示信息,并发送给终端供用户查阅和/或修改。作为一个示例,用户在配置页面上选择数据库和版本,配置页面中提供下拉框,在该下拉框中展示有多种数据库和对应的版本供用户选择,且数据库为必选项,不能为空。选择完对应的数据库和版本后展示不同的配置字段信息。如连接地址、端口号、用户名和密码,这些配置信息均为必填,不能为空。上述实施例中,通过在数据构造工具的配置页面输入数据配置文件,便可快速地获取到数据配置文件中的待测数据。根据数据配置文件来生成包含有sql插入语句的数据插入脚本,通过运行该数据插入脚本,将数据配置文件中的待测数据作为测试数据插入数据库,由于待测数据已预先进行设置,因此可以快速获取到测试数据,有效地提高测试效率。而且,由于数据插入脚本是根据数据配置文件生成,即便系统升级改造或接口升级改造,均无需测试人员重新编写脚本,进一步提高了测试效率。在一个实施例中,数据配置文件中还配置有表结构信息,如图3所示,s208具体可以包括:s302,判断配置文件中的表结构信息是否为空值信息。在一个实施例中,服务器对文件名、字段名、表结构信息以及对应的待测数据进行封装,在封装的代码中对文件名、字段名、表结构信息以及对应的待测数据这些字段进行参数化。服务器在调用所封装的代码时,对数据配置文件中的表结构信息进行判断,判断表结构信息否为空值信息。例如,对excel配置文件配置表名称、字段名、表结构信息以及对应的待测数据,用户在配置页面上传excel配置文件,可以对excel配置文件的表结构信息读取和校验。s304,若表结构信息为空值信息时,则将sql插入语句指定的数据配置文件中的各测试数据作为测试数据插入数据库。s306,若表结构信息不为空值信息时,则按照字段名读取对应的待测数据,通过sql插入语句将读取的待测数据作为测试数据插入数据库。例如,数据配置文件可以包含以下内容:第一行为字段名、第二行为需要插入数据的表结构信息、第三行及以后的各行为待测数据。其中,第一行的字段名可用做非空校验,若为空,则提示配置字段名。第二行的表结构信息若为空,则表示将表中的全部待测数据插入数据库,即insertintotablenamevalues(值1,值2…);若不为空,则从数据配置文件中对应的列读取字段名,进而得到对应的待测数据,即insertintotablename(列1,列2,列3…)values(值1,值2,值3…),根据配置数据的行数循环对应的次数生成对应数量的数据插入脚本并执行。第三行及以后各行的数据为待测数据,若为空,则提示输入在数据配置文件中录入相应的数据。上述实施例中,通过判断所述配置文件中的表结构信息是否为空值信息,当表结构信息为空值信息时,可以将所述数据配置文件中的各测试数据作为测试数据插入数据库,可以快速地将所有待测数据插入数据库,对于测试数据量要求大的测试,可以有效地提高测试效率。当表结构信息不为空值信息时,读取对应的待测数据作为测试数据插入数据库,可以灵活的按照需求来提供测试数据。应该理解的是,虽然图1-2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。在一个实施例中,如图4所示,提供了一种测试数据构造装置,包括:文件获取模块402、脚本生成模块404和数据插入模块406,其中:文件获取模块402,用于调用数据构造工具获取数据配置文件;数据配置文件配置有待测数据;脚本生成模块404,用于通过数据构造工具通过数据构造工具根据数据配置文件生成包含有sql插入语句的数据插入脚本;sql插入语句用于将待测数据插入数据库;数据插入模块406,用于执行数据插入脚本,以在待测数据属于常数型数据时,将sql插入语句指定的待测数据作为测试数据插入数据库。在其中一个实施例中,该装置还包括:数据库连接模块408;其中:数据库连接模块408,用于检测在数据构造工具的配置页面所触发的数据库选择指令;从数据构造工具所提供的候选数据库中选取与数据库选择指令对应的数据库和数据库对应的版本;获取与数据库对应的连接脚本,运行连接脚本以连接数据库,以便将待测数据作为测试数据插入所连接的数据库。在其中一个实施例中,数据插入模块406还用于:判断待测数据所归属的数据类型;当待测数据属于函数型数据时,根据待测数据调用对应的函数;根据所调用的函数获得目标数据,将目标数据确定为测试数据;通过数据插入脚本中sql插入语句将测试数据插入数据库。在其中一个实施例中,脚本生成模块404还用于:通过数据构造工具读取数据配置文件中的字段名;当所读取的字段名不为空值时,按照所读取的字段名获取对应的待测数据;在校验所读取的待测数据不为空值,根据所读取的待测数据生成包含有sql插入语句的数据插入脚本。在其中一个实施例中,数据插入模块406还用于:接收在配置页面所触发的数据构造指令;响应于数据构造指令,检查配置页面中的必填项是否输入符合预设条件的信息;当必填项输入符合预设条件的信息时,将sql插入语句指定的待测数据作为测试数据插入数据库,并输出表示数据是否成功插入数据库的提示信息。在其中一个实施例中,测试数据包括订单请求数据;装置还包括:测试模块410;其中:测试模块410,用于调用交易系统的支付接口;根据付接口对订单请求数据进行支付处理获得订单数据;记录对订单请求数据进行支付处理的处理时长,以根据处理时长确定交易系统的支付性能;以及,将订单数据与预设订单数据进行对比;根据对比所得的结果生成测试报告,以根据测试报告确定交易系统的支付功能是否出现异常。上述实施例中,通过在数据构造工具的配置页面输入数据配置文件,便可快速地获取到数据配置文件中的待测数据。根据数据配置文件来生成包含有sql插入语句的数据插入脚本,通过运行该数据插入脚本,将数据配置文件中的待测数据作为测试数据插入数据库,由于待测数据已预先进行设置,因此可以快速获取到测试数据,有效地提高测试效率。而且,由于数据插入脚本是根据数据配置文件生成,即便系统升级改造或接口升级改造,均无需测试人员重新编写脚本,进一步提高了测试效率。在其中一个实施例中,数据配置文件中还配置有表结构信息;数据插入模块406还用于:判断配置文件中的表结构信息是否为空值信息;若表结构信息为空值信息时,则将sql插入语句指定的数据配置文件中的各测试数据作为测试数据插入数据库;若表结构信息不为空值信息时,则按照字段名读取对应的待测数据,通过sql插入语句将读取的待测数据作为测试数据插入数据库。上述实施例中,通过判断所述配置文件中的表结构信息是否为空值信息,当表结构信息为空值信息时,可以将所述数据配置文件中的各测试数据作为测试数据插入数据库,可以快速地将所有待测数据插入数据库,对于测试数据量要求大的测试,可以有效地提高测试效率。当表结构信息不为空值信息时,读取对应的待测数据作为测试数据插入数据库,可以灵活的按照需求来提供测试数据。关于测试数据构造装置的具体限定可以参见上文中对于测试数据构造方法的限定。上述测试数据构造装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据配置文件等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种测试数据构造方法。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:调用数据构造工具获取数据配置文件;数据配置文件配置有待测数据;通过数据构造工具通过数据构造工具根据数据配置文件生成包含有sql插入语句的数据插入脚本;sql插入语句用于将待测数据插入数据库;执行数据插入脚本,以在待测数据属于常数型数据时,将sql插入语句指定的待测数据作为测试数据插入数据库。在一个实施例中,处理器执行计算机程序时还实现以下步骤:检测在数据构造工具的配置页面所触发的数据库选择指令;从数据构造工具所提供的候选数据库中选取与数据库选择指令对应的数据库和数据库对应的版本;获取与数据库对应的连接脚本,运行连接脚本以连接数据库,以便将待测数据作为测试数据插入所连接的数据库。在一个实施例中,处理器执行计算机程序时还实现以下步骤:判断待测数据所归属的数据类型;当待测数据属于函数型数据时,根据待测数据调用对应的函数;根据所调用的函数获得目标数据,将目标数据确定为测试数据;通过数据插入脚本中sql插入语句将测试数据插入数据库。在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过数据构造工具读取数据配置文件中的字段名;当所读取的字段名不为空值时,按照所读取的字段名获取对应的待测数据;在校验所读取的待测数据不为空值,根据所读取的待测数据生成包含有sql插入语句的数据插入脚本。在一个实施例中,数据配置文件中还配置有表结构信息;处理器执行计算机程序时还实现以下步骤:判断配置文件中的表结构信息是否为空值信息;若表结构信息为空值信息时,则将sql插入语句指定的数据配置文件中的各测试数据作为测试数据插入数据库;若表结构信息不为空值信息时,则按照字段名读取对应的待测数据,通过sql插入语句将读取的待测数据作为测试数据插入数据库。在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收在配置页面所触发的数据构造指令;响应于数据构造指令,检查配置页面中的必填项是否输入符合预设条件的信息;当必填项输入符合预设条件的信息时,将sql插入语句指定的待测数据作为测试数据插入数据库,并输出表示数据是否成功插入数据库的提示信息。在一个实施例中,测试数据包括订单请求数据;处理器执行计算机程序时还实现以下步骤:调用交易系统的支付接口;根据付接口对订单请求数据进行支付处理获得订单数据;记录对订单请求数据进行支付处理的处理时长,以根据处理时长确定交易系统的支付性能;以及,将订单数据与预设订单数据进行对比;根据对比所得的结果生成测试报告,以根据测试报告确定交易系统的支付功能是否出现异常。在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:调用数据构造工具获取数据配置文件;数据配置文件配置有待测数据;通过数据构造工具通过数据构造工具根据数据配置文件生成包含有sql插入语句的数据插入脚本;sql插入语句用于将待测数据插入数据库;执行数据插入脚本,以在待测数据属于常数型数据时,将sql插入语句指定的待测数据作为测试数据插入数据库。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:检测在数据构造工具的配置页面所触发的数据库选择指令;从数据构造工具所提供的候选数据库中选取与数据库选择指令对应的数据库和数据库对应的版本;获取与数据库对应的连接脚本,运行连接脚本以连接数据库,以便将待测数据作为测试数据插入所连接的数据库。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:判断待测数据所归属的数据类型;当待测数据属于函数型数据时,根据待测数据调用对应的函数;根据所调用的函数获得目标数据,将目标数据确定为测试数据;通过数据插入脚本中sql插入语句将测试数据插入数据库。在一个实施例中,处理器执行计算机程序时还实现以下步骤:通过数据构造工具读取数据配置文件中的字段名;当所读取的字段名不为空值时,按照所读取的字段名获取对应的待测数据;在校验所读取的待测数据不为空值,根据所读取的待测数据生成包含有sql插入语句的数据插入脚本。在一个实施例中,数据配置文件中还配置有表结构信息;计算机程序被处理器执行时还实现以下步骤:判断配置文件中的表结构信息是否为空值信息;若表结构信息为空值信息时,则将sql插入语句指定的数据配置文件中的各测试数据作为测试数据插入数据库;若表结构信息不为空值信息时,则按照字段名读取对应的待测数据,通过sql插入语句将读取的待测数据作为测试数据插入数据库。在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收在配置页面所触发的数据构造指令;响应于数据构造指令,检查配置页面中的必填项是否输入符合预设条件的信息;当必填项输入符合预设条件的信息时,将sql插入语句指定的待测数据作为测试数据插入数据库,并输出表示数据是否成功插入数据库的提示信息。在一个实施例中,测试数据包括订单请求数据;计算机程序被处理器执行时还实现以下步骤:调用交易系统的支付接口;根据付接口对订单请求数据进行支付处理获得订单数据;记录对订单请求数据进行支付处理的处理时长,以根据处理时长确定交易系统的支付性能;以及,将订单数据与预设订单数据进行对比;根据对比所得的结果生成测试报告,以根据测试报告确定交易系统的支付功能是否出现异常。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1