测试数据匹配方法、装置、计算机设备及存储介质与流程

文档序号:32003504发布日期:2022-11-02 12:09阅读:41来源:国知局
测试数据匹配方法、装置、计算机设备及存储介质与流程

1.本发明涉及软件测试领域,尤其涉及一种测试数据匹配方法、装置、计算机设备及存储介质。


背景技术:

2.随着软件产业的高速,系统版本迭代速度加快,快速的软件测试显得尤为重要。软件测试重要前提在于测试用例的设计,测试用例设计的重点是用例数据的设计。用例设计响应慢、设计不全或者测试数据考虑不全,都会给测试交付带来质量隐患。而现实测试执行中,测试人员的设计能力良莠不齐,很容易成为快速测试实施和测试交付质量的瓶颈。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种测试数据匹配方法、装置、计算机设备及存储介质,以同时提高软件测试的效率和质量。
4.一种测试数据匹配方法,包括:
5.提取测试页面的交互控件以及所述交互控件的属性项;
6.获取与所述属性项关联的约束条件;
7.基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据;并获取所述测试数据的响应级别;
8.根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合。
9.一种测试数据匹配装置,包括:
10.提取模块,用于提取测试页面的交互控件以及所述交互控件的属性项;
11.获取约束条件模块,用于获取与所述属性项关联的约束条件;
12.匹配数据模块,用于基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据;并获取所述测试数据的响应级别;
13.生成用例数据模块,用于根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合。
14.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述测试数据匹配方法。
15.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述测试数据匹配方法。
16.上述测试数据匹配方法、装置、计算机设备及存储介质,通过测试数据库的精确匹配,可以快速生成全面有效的用例数据集合,相当于给每个开发团队配备了高级测试分析师和高配的测试经验值,能帮助开发人员快速完成全面单元测试验证,降低单元测试成本,帮助提升单元测试质量。
附图说明
17.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
18.图1是本发明一实施例中测试数据匹配方法的一应用环境示意图;
19.图2是本发明一实施例中测试数据匹配方法的一流程示意图;
20.图3是本发明一实施例中用列表表示的测试数据;
21.图4是本发明一实施例中测试数据匹配装置的一结构示意图;
22.图5是本发明一实施例中计算机设备的一示意图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.本实施例提供的账户方法,可应用在如图1的应用环境中,其中,用户终端通过网络与服务端进行通信。其中,用户终端包括但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
25.在一实施例中,如图2所示,提供一种测试数据匹配方法,以该方法应用在图1中的服务端为例进行说明,包括如下步骤s10-s40。
26.s10、提取测试页面的交互控件以及所述交互控件的属性项。
27.可理解地,测试页面指的是,在开发完成相应页面代码开发并且编译通过之后,需要进行测试的页面。交互控件指的是具有交互功能的控件,如输入框(textbox),列表框(listbox)、选择框(checkbox)等。每一交互控件都有若干属性项,如名称(name)、识别号(id)、类型(type)、风格(style)、值(value)等。
28.在一些示例中,可以对测试页面的控件元素进行分析,生成控件列表,然后再从控件列表中提取出交互控件。
29.s20、获取与所述属性项关联的约束条件。
30.可理解地,约束条件指的是交互控件的可输入数据的边界范围(也即是需求端的边界范围)。在此处,约束条件包括但不限于长度、数据类型和取值范围。例如,属性项“身份证”其长度必须为18位,且前17位为必须为数字。约束条件可以是预先存储在测试数据库中,也可以根据用户的需求进行人工设置。
31.s30、基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据;并获取所述测试数据的响应级别。
32.可理解地,测试数据库可以是基于测试专家经验构建的数据库。测试数据库中存储有多个类型控件的测试数据(用例数据)。与交互控件匹配的测试数据,指的是在属性项和约束条件相同或近似的控件的测试数据。每一测试数据都有对应的响应级别,如高频、中
频和低频。
33.在一示例中,如图3所示,图3为一示例生成的测试数据(用列表表示)。在图3的示例中,测试数据包括用例序号、类别、关注点、用例级别(即响应级别)、用例数据和赋值特点。
34.在上述测试数据中,测试数据涉及类别和用例级别的划分。正常的正向、反向,普通的测试人员能够想到。但是异常类的测试用例,就需要有一定的测试经验积累才能想到。如果要把异常用例考虑得更周到,就需要有专家级的测试经验支持。
35.在测试数据库中,这些异常用例根据场景出错的历史概率经验值来进行评估,并打上相应的高频、中频、低频标签。
36.如图3所示,正常的有效等价、无效等价用例、开区间边界、进位算法(四舍五入)等都是高频用例,而闭区间点的边界、进位算法(截取法、进位法)、跨数位和跨类型的反向用例等作为中频用例。低频用例基本只在特殊异常值中考虑。
37.高频用例包括两种,一是常见的正常用例,包括常规的有效用例和正常的反向用例;二是常见的异常用例,即冷僻程度低一些的异常场景,尤其是开发一不小心就容易忽略异常处理的场景。
38.中频用例,是冷僻程度中等的异常用例和考虑得更细致一点的反向用例(通常是边界类的细化),普通的测试设计可能不会考虑的。
39.低频用例,是冷僻程度比较高的异常用例,一般测试人员未经历到的场景,平常情况不会触发的异常,普通的测试设计基本不会考虑到的。
40.s40、根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合。
41.可理解地,可以基于各个测试数据以及相应的响应级别生成用例数据集合。不同的响应级别可以设置不同的用例数量。
42.本实施例通过测试数据库的精确匹配,可以快速生成全面有效的用例数据集合,相当于给每个开发团队配备了高级测试分析师和高配的测试经验值,能帮助开发人员快速完成全面单元测试验证,降低单元测试成本,帮助提升单元测试质量。
43.可选的,步骤s20,即所述获取与所述属性项关联的约束条件,包括:
44.s201、在所述测试数据库中查询与所述属性项对应的约束信息;
45.s202、根据所述约束信息设置所述约束条件。
46.可理解地,在测试数据库中,可以基于专家经验配置好各种属性项的约束信息。通过属性项的查询,可以获取相应的约束信息,再根据约束信息设置约束条件。
47.在一些示例中,每一属性项可以包含多个不同场景下的约束信息。因而,可以通过识别测试页面所处的场景精确获取关联的约束条件。
48.本实施例可以提高约束条件的配置效率。
49.可选的,步骤s20,即所述获取与所述属性项关联的约束条件,包括:
50.s203、接收基于用户输入操作生成的控件约束指令;
51.s204、根据所述控件约束指令生成所述约束条件。
52.可理解地,通常情况下,不同的测试页面,其测试需求是不同。此时,可以提供约束条件的配置页面,用户通过该配置页面进行输入操作,生成相应的控件约束指令,再由控件约束指令生成约束条件。
53.本实施例可以提高约束条件配置的灵活性。
54.可选的,步骤s30中,即所述获取所述测试数据的响应级别,包括:
55.s301、查询所述测试数据在所述测试数据库中的测试频次;
56.s302、根据所述测试频次生成所述响应级别。
57.可理解地,在测试数据库中,还记录有各个测试数据的测试频次。在一些示例中,可以为测试频次大于第一阈值(如100)的测试数据添加“高频”标签;可以为测试频次大于第二阈值(如100),小于或等于第一阈值(如50)的测试数据添加“中频”标签;可以为测试频次小于或等于第一阈值(如100)的测试数据添加“低频”标签。上述标签即为响应级别。
58.在另一些示例中,可以针对不同的应用场景设置不同的比较阈值(包括上述第一阈值和第二阈值),以满足实际应用需求。
59.本实施例通过设置不同的响应级别,可以精准匹配测试需求,获得更好的测试结果。
60.可选的,步骤s30中,即所述获取所述测试数据的响应级别,包括:
61.s303、接收基于用户输入操作生成的响应级别设置指令;
62.s304、根据所述响应级别设置指令生成所述响应级别。
63.可理解地,在一些特殊情况下,可以基于实际手动调整测试数据的响应级别。此时,可以提供响应级别的设置页面,用户通过该设置页面进行输入操作,生成相应的响应级别设置指令,再由响应级别设置指令生成响应级别。
64.本实施例可以提高响应级别设置的灵活性。
65.可选的,步骤s30之前,即所述基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据之前,还包括:
66.s31、获取测试经验数据,基于所述测试经验数据构建初始测试数据库;
67.s32、获取测试更新数据,基于所述测试更新数据对所述初始测试数据库进行更新,生成所述测试数据库。
68.可理解地,在此处,测试经验数据可以指资深专职测试人员的一线经验总结形成的数据。可以基于这些测试经验数据构建初始测试数据库。构建出的初始测试数据库包含多个类型的测试数据。
69.测试更新数据指的是在测试实践过程中,基于实际生产经验和技术变革获得的新的测试数据。使用测试更新数据对初始测试数据库进行更新,生成测试数据库。由于不断获得新的测试更新数据,测试数据库可以更好地匹配实际测试需要,提高测试效率。
70.可选的,步骤s40,即所述根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合,包括:
71.s401、获取与所述响应级别对应的数据选取规则;所述数据选取规则包括数据扩充规则或数据删减规则;
72.s42、基于所述数据选取规则对所述测试数据进行处理,生成所述用例数据集合。
73.可选的,从测试数据库匹配出的测试数据,其数量可能大于实际测试需求,也可能大于实际测试需求。若测试数据的数量大于实际测试需求,则需要选用数据删减规则对测试数据进行筛选,进而减少测试数据的数量。若测试数据的数量小于实际测试需求,则需要选用数据扩充规则对测试数据进行扩充,进而增加测试数据的数量。
74.一般情况下,响应级别为“高频”,则其实际测试需求的数量为一较大值;响应级别为“低频”,则其实际测试需求的数量为一较小值。
75.应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
76.在一实施例中,提供一种测试数据匹配装置,该测试数据匹配装置与上述实施例中测试数据匹配方法一一对应。如图4所示,该测试数据匹配装置包括提取模块10、获取约束条件模块20、匹配数据模块30、生成用例数据模块40。各功能模块详细说明如下:
77.提取模块10,用于提取测试页面的交互控件以及所述交互控件的属性项;
78.获取约束条件模块20,用于获取与所述属性项关联的约束条件;
79.匹配数据模块30,用于基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据;并获取所述测试数据的响应级别;
80.生成用例数据模块40,用于根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合。
81.可选的,获取约束条件模块20包括:
82.查询约束单元,用于在所述测试数据库中查询与所述属性项对应的约束信息;
83.第一约束条件单元,用于根据所述约束信息设置所述约束条件。
84.可选的,获取约束条件模块20包括:
85.约束指令单元,用于接收基于用户输入操作生成的控件约束指令;
86.第二约束条件单元,用于根据所述控件约束指令生成所述约束条件。
87.可选的,匹配数据模块30包括:
88.查询频次单元,用于查询所述测试数据在所述测试数据库中的测试频次;
89.第一生成响应级别单元,用于根据所述测试频次生成所述响应级别。
90.可选的,匹配数据模块30包括:
91.级别设置指令单元,用于接收基于用户输入操作生成的响应级别设置指令;
92.第二生成响应级别单元,用于根据所述响应级别设置指令生成所述响应级别。
93.可选的,还包括生成测试数据库模块,所述测试数据库模块包括:
94.构建初始数据库单元,用于获取测试经验数据,基于所述测试经验数据构建初始测试数据库;
95.更新数据库单元,用于获取测试更新数据,基于所述测试更新数据对所述初始测试数据库进行更新,生成所述测试数据库。
96.可选的,生成用例数据模块40包括:
97.获取选取规则单元,用于获取与所述响应级别对应的数据选取规则;所述数据选取规则包括数据扩充规则或数据删减规则;
98.生成用例数据单元,用于基于所述数据选取规则对所述测试数据进行处理,生成所述用例数据集合。
99.关于测试数据匹配装置的具体限定可以参见上文中对于测试数据匹配方法的限定,在此不再赘述。上述测试数据匹配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以
以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
100.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储测试数据匹配方法涉及的方法。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种测试数据匹配方法。
101.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
102.提取测试页面的交互控件以及所述交互控件的属性项;
103.获取与所述属性项关联的约束条件;
104.基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据;并获取所述测试数据的响应级别;
105.根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合。
106.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
107.提取测试页面的交互控件以及所述交互控件的属性项;
108.获取与所述属性项关联的约束条件;
109.基于所述属性项和所述约束条件在测试数据库中查找出与所述交互控件匹配的测试数据;并获取所述测试数据的响应级别;
110.根据所述测试数据和所述响应级别生成所述测试页面的用例数据集合。
111.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
112.以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1