CN113220591A - 生成测试数据的方法及装置 - Google Patents

生成测试数据的方法及装置 Download PDF

Info

Publication number
CN113220591A
CN113220591A CN202110624876.3A CN202110624876A CN113220591A CN 113220591 A CN113220591 A CN 113220591A CN 202110624876 A CN202110624876 A CN 202110624876A CN 113220591 A CN113220591 A CN 113220591A
Authority
CN
China
Prior art keywords
data
test data
data generation
generating
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110624876.3A
Other languages
English (en)
Inventor
张娟娟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Original Assignee
Bank of China Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202110624876.3A priority Critical patent/CN113220591A/zh
Publication of CN113220591A publication Critical patent/CN113220591A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种生成测试数据的方法及装置,涉及大数据技术领域,其中该方法包括:接收用户通过图形化界面输入的当前业务需求配置数据;根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。本发明可以实现通过图形化界面方式,高效、准确和灵活地生成待测试系统对应的测试数据。

Description

生成测试数据的方法及装置
技术领域
本发明涉及大数据技术领域,尤其涉及一种生成测试数据的方法及装置。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在测试一个系统的时候,特别是对系统进行性能测试的时候,往往需要大量的测试数据来支撑。编写测试数据纯靠手工来完成的话,不仅要投入大量的人员精力,可能造出的数据也会有一定的错误;若是通过编写程序来完成数据的生成,那不同的系统可能需要不同的程序来生成测试数据,这样就会有大量的相似的程序存在。
发明内容
本发明实施例提供一种生成测试数据的方法,用以高效、准确和灵活地生成待测试系统对应的测试数据,该方法包括:
接收用户通过图形化界面输入的当前业务需求配置数据;
根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;
根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。
本发明实施例还提供一种生成测试数据的装置,用以高效、准确和灵活地生成待测试系统对应的测试数据,该装置包括:
图形化接收单元,用于接收用户通过图形化界面输入的当前业务需求配置数据;
确定单元,用于根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;
生成单元,用于根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述生成测试数据的方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述生成测试数据的方法的计算机程序。
本发明实施例中,生成测试数据的方案,与现有技术中不同的系统可能需要不同的程序来生成测试数据,无法生成适用于不同系统的测试数据,数据生成错误率也高,效率也低的技术方案相比,通过:接收用户通过图形化界面输入的当前业务需求配置数据;根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据,可以实现通过图形化界面方式,高效、准确和灵活地生成待测试系统对应的测试数据。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中生成测试数据的方法的流程示意图;
图2为本发明另一实施例中生成测试数据的方法的流程示意图;
图3为本发明另一实施例中生成测试数据的方法的流程示意图;
图4为本发明实施例中生成测试数据的装置的结构示意图;
图5为本发明另一实施例中生成测试数据的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
发明人发现:datafaker(测试数据生成工具),使用python语言开发,使用命令行的方式生成测试数据,支持多种数据类型,能够模拟多表关联数据,支持批数据和流数据生成,支持多种数据输出方式,支持多数据源,可指定输出格式。然而,现有技术利用命令行的方式生成测试数据,要有一定的编程基础,学习成本比较高。
考虑到现有技术存在的问题,本发明实施例提供了一种生成测试数据的方案,该方案通过统一图形化界面和程序入口,可根据用户自定义的数据字段个数、数据类型、数据长度、数据生成规则、数据生成格式、数据生成数量等批量生成符合用户预期的测试数据。与现有方案相比,本发明实施例使用JAVA图形用户界面GUI库SWT进行开发,SWT(StandardWidget Toolkit)是一个开源的GUI编程框架,支持丰富的组件类型,更快地响应时间和更少的内存消耗。具体地,本发明实施例为图形化界面方式,简单易学,用户可以灵活配置数据生成数据量、数据格式等信息,根据自己的业务需求生成符合要求的测试数据。下面对该生成测试数据的方案进行详细介绍。
图1为本发明实施例中生成测试数据的方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤101:接收用户通过图形化界面输入的当前业务需求配置数据;
步骤102:根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;
步骤103:根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。
本发明实施例中,生成测试数据的方法,与现有技术中不同的系统可能需要不同的程序来生成测试数据,无法生成适用于不同系统的测试数据,数据生成错误率也高,效率也低的技术方案相比,通过:接收用户通过图形化界面输入的当前业务需求配置数据;根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据,可以实现通过图形化界面方式,高效、准确和灵活地生成待测试系统对应的测试数据。下面对该方法涉及的各个步骤进行详细介绍。
一、首先介绍上述步骤101,可以通过一个图形化界面模块来实现,即下面实施例所述的图形化接收单元。
具体实施时,该步骤的输入数据可以是:用户输入数据字段名称、字段格式、字段长度等信息,即为业务需求配置数据,输出数据可以是:数据列表(每一条数据为固定的json串,json串中包含了数据字段名称、字段格式、字段长度等信息)。
具体实施时,本发明实施例利用java编写图形化界面,在界面中用户自定义数据字段个数和数据生成数量,选择数据生成格式(json格式或是以特殊符号分割的数据),程序会根据定义的数据字段个数,生成对应的字段输入框,每一个字段输入框后可以限定该字段的数据类型、数据长度以及数据生成规则(即数据生成形式,例如数字、字母、特殊符号、中文字符及其组合),并后续根据数据生成数量和数据生成格式生成相应个数和格式的数据。因此,本发明实施例降低了数据生成的错误率,并且可以灵活生成适用于不同系统的业务数据。
通过上述可知,在一个实施例中,如图2所示,接收用户通过图形化界面输入的当前业务需求配置数据,可以包括步骤1011:接收用户通过图形化界面输入的数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量。
二、接着,介绍上述步骤102,该步骤可以通过参数解析模块和数据构造模块来实现,参见下面实施例所述的确定单元。
具体实施时,参数解析模块的输入数据可以是数据列表(每一条数据为固定的json串,json串中包含了数据字段名称、字段格式、字段长度等信息),输出数据可以是:根据数据列表中每一条数据的约定信息生成对应的构造函数类。
具体实施时,数据构造模块的输入数据可以是构造函数类,输出数据可以是根据构造函数类生成指定数量的数据列表。
通过上述可知,在一个实施例中,如图2所示,根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略,可以包括步骤1021:
根据数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量的数据列表中每一条数据的约定信息,以及约定信息与构造类函数的对应关系,生成每一条数据对应的构造函数类作为当前测试数据生成策略。
具体实施时,业务需求配置数据与测试数据生成策略之间的关系可以是一张表格,将当前业务需求配置数据到该表格中匹配查找,得到对应的测试数据生成策略,即得到对应的构造函数类。
三、接着,介绍上述步骤103。
具体实施时,生成测试数据时还考虑了待测试系统的类型,灵活生成适用于不同系统的业务数据。
具体实施时,该步骤还可以包括一个数据输出模块,该数据输出模块的输入数据可以是:根据构造函数类生成指定数量的数据列表,输出数据可以是指定格式的数据文件。
四、接着,介绍上述步骤103之后的优选步骤。
在一个实施例中,如图3所示,上述生成测试数据的方法还可以包括步骤104:将生成的测试数据的文件路径显示在图形化界面中,并提供下载按钮以便用户下载使用所述测试数据。
具体实施时,最后生成数据文件路径会显示在用户图形界面中,并提供下载按钮以便用户下载数据。
本发明实施例采用图形化界面方式,简单易学,用户可以灵活配置数据生成数据量、数据格式等信息,根据自己的业务需求生成符合要求的测试数据。
本发明实施例中还提供了一种生成测试数据的装置,如下面的实施例所述。由于该系统解决问题的原理与生成测试数据的方法相似,因此该装置的实施可以参见生成测试数据的方法的实施,重复之处不再赘述。
图4为本发明实施例中生成测试数据的装置的结构示意图,如图4所示,该装置包括:
图形化接收单元01,用于接收用户通过图形化界面输入的当前业务需求配置数据;
确定单元02,用于根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;
生成单元03,用于根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。
在一个实施例中,所述图形化接收单元具体可以用于:接收用户通过图形化界面输入的数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量。
在一个实施例中,所述确定单元具体用于:
根据数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量的数据列表中每一条数据的约定信息,以及约定信息与构造类函数的对应关系,生成每一条数据对应的构造函数类作为当前测试数据生成策略。
在一个实施例中,如图5所示,上述生成测试数据的装置还可以包括:提供单元04,用于将生成的测试数据的文件路径显示在图形化界面中,并提供下载按钮以便用户下载使用所述测试数据。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述生成测试数据的方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述生成测试数据的方法的计算机程序。
本发明实施例中,生成测试数据的方案,与现有技术中不同的系统可能需要不同的程序来生成测试数据,无法生成适用于不同系统的测试数据,数据生成错误率也高,效率也低的技术方案相比,通过:接收用户通过图形化界面输入的当前业务需求配置数据;根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据,可以实现通过图形化界面方式,高效、准确和灵活地生成待测试系统对应的测试数据。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种生成测试数据的方法,其特征在于,包括:
接收用户通过图形化界面输入的当前业务需求配置数据;
根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;
根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。
2.如权利要求1所述的生成测试数据的方法,其特征在于,接收用户通过图形化界面输入的当前业务需求配置数据,包括:接收用户通过图形化界面输入的数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量。
3.如权利要求2所述的生成测试数据的方法,其特征在于,根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略,包括:
根据数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量的数据列表中每一条数据的约定信息,以及约定信息与构造类函数的对应关系,生成每一条数据对应的构造函数类作为当前测试数据生成策略。
4.如权利要求1所述的生成测试数据的方法,其特征在于,还包括:将生成的测试数据的文件路径显示在图形化界面中,并提供下载按钮以便用户下载使用所述测试数据。
5.一种生成测试数据的装置,其特征在于,包括:
图形化接收单元,用于接收用户通过图形化界面输入的当前业务需求配置数据;
确定单元,用于根据所述当前业务需求配置数据,以及预先建立的业务需求配置数据与测试数据生成策略之间的关系,确定当前测试数据生成策略;
生成单元,用于根据当前测试数据生成策略,以及待测试系统的类型,生成测试数据。
6.如权利要求5所述的生成测试数据的装置,其特征在于,所述图形化接收单元具体用于:接收用户通过图形化界面输入的数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量。
7.如权利要求6所述的生成测试数据的装置,其特征在于,所述确定单元具体用于:
根据数据字段个数、字段的数据类型、数据长度、数据生成形式、数据生成格式和数据生成数量的数据列表中每一条数据的约定信息,以及约定信息与构造类函数的对应关系,生成每一条数据对应的构造函数类作为当前测试数据生成策略。
8.如权利要求5所述的生成测试数据的装置,其特征在于,还包括:提供单元,用于将生成的测试数据的文件路径显示在图形化界面中,并提供下载按钮以便用户下载使用所述测试数据。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至4任一所述方法的计算机程序。
CN202110624876.3A 2021-06-04 2021-06-04 生成测试数据的方法及装置 Pending CN113220591A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110624876.3A CN113220591A (zh) 2021-06-04 2021-06-04 生成测试数据的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110624876.3A CN113220591A (zh) 2021-06-04 2021-06-04 生成测试数据的方法及装置

Publications (1)

Publication Number Publication Date
CN113220591A true CN113220591A (zh) 2021-08-06

Family

ID=77083089

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110624876.3A Pending CN113220591A (zh) 2021-06-04 2021-06-04 生成测试数据的方法及装置

Country Status (1)

Country Link
CN (1) CN113220591A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484166A (zh) * 2014-12-04 2015-04-01 山东科技大学 一种自动化测试系统图形化建模装置及方法
CN110188030A (zh) * 2019-04-08 2019-08-30 平安科技(深圳)有限公司 一种测试数据生成方法、装置及计算机设备、存储介质
CN111966760A (zh) * 2020-08-18 2020-11-20 中国银行股份有限公司 基于Hive数据仓库的测试数据生成方法及装置
WO2020253112A1 (zh) * 2019-06-19 2020-12-24 深圳壹账通智能科技有限公司 测试策略的获取方法、装置、终端及可读存储介质
CN112597003A (zh) * 2020-12-11 2021-04-02 平安普惠企业管理有限公司 自动化测试方法、装置和计算机设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484166A (zh) * 2014-12-04 2015-04-01 山东科技大学 一种自动化测试系统图形化建模装置及方法
CN110188030A (zh) * 2019-04-08 2019-08-30 平安科技(深圳)有限公司 一种测试数据生成方法、装置及计算机设备、存储介质
WO2020253112A1 (zh) * 2019-06-19 2020-12-24 深圳壹账通智能科技有限公司 测试策略的获取方法、装置、终端及可读存储介质
CN111966760A (zh) * 2020-08-18 2020-11-20 中国银行股份有限公司 基于Hive数据仓库的测试数据生成方法及装置
CN112597003A (zh) * 2020-12-11 2021-04-02 平安普惠企业管理有限公司 自动化测试方法、装置和计算机设备

Similar Documents

Publication Publication Date Title
US10642721B2 (en) Generation of automated testing scripts by converting manual test cases
US8434062B2 (en) Enhancing source code debugging and readability using visual symbols
CN106502896B (zh) 一种函数测试代码的生成方法及装置
US20130097583A1 (en) Systems and Methods For Automating the Application of a Software Methodology
NL2010546A (en) Method and apparatus for automatically generating a test script for a graphical user interface.
CN108469955B (zh) 一种基于注解的Android注入框架实现方法
CN111158656B (zh) 基于因果树法的测试代码生成方法及装置
CN110955410B (zh) 一种代码自动生成方法、装置、设备及介质
US20140208243A1 (en) Method for providing a user interface, computer system and computer program product
CN107797805B (zh) 一种代码封装方法、装置及计算机可读存储介质
US20140181786A1 (en) Generating debugging extension source code utilizing debugging information
CN112286814A (zh) 一种测试用例脚本的自动化生成系统及方法
CN110688111A (zh) 业务流程的配置方法、装置、服务器和存储介质
US20220308841A1 (en) Enabling custom software development by domain experts
US10678514B2 (en) Method and device for generating code assistance information
CN111143228B (zh) 基于决策表法的测试代码生成方法及装置
US9542165B2 (en) Model to Petri-Net transformation
CN110633258B (zh) 日志插入方法、装置、计算机装置及存储介质
US11182272B2 (en) Application state monitoring
CN113220591A (zh) 生成测试数据的方法及装置
CN114385155A (zh) vue项目可视化工具生成方法、装置、设备及存储介质
Jakšić et al. Evaluating the usability of a visual feature modeling notation
CN111639030A (zh) 一种页面测试方法、装置、设备及存储介质
US9870257B1 (en) Automation optimization in a command line interface
CN115857900B (zh) 代码自动生成方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination