测试用例构建方法和装置与流程

文档序号:31766556发布日期:2022-10-12 04:47阅读:56来源:国知局
测试用例构建方法和装置与流程

1.本发明涉及测试用例构建技术领域,特别涉及大数据技术领域,尤其涉及一种测试用例构建方法和装置。


背景技术:

2.在当今的测试用例构建场景下,开发人员往往只是以被测试应用的程序代码和被测试应用的基本功能为依据来构建测试用例,而很少考虑根据用户使用应用的实际使用情况有针对性地构建测试用例。因此,所构建的测试用例,往往不能够准确地反映应用的实际情况,从而使测试用例的准确性不高,进而导致对应用进行测试时的测试准确性也不高。而且,开发人员在构建测试用例时,由于较少考虑应用的实际使用情况,从而会导致用所构建的测试用例进行测试并修正后的应用程序,在实际投产应用时仍会出现一些问题,进而导致测试人员需再次或多次对所构建的测试用例重新进行调整和修改,导致测试用例的构建效率不高。


技术实现要素:

3.本发明的一个目的在于提供一种测试用例构建方法,以使所构建的测试用例更加符合应用的实际使用情况,提高测试用例的构建效率和准确性,进而提高用所构建的测试用例对应用进行测试的准确性。本发明的另一个目的在于提供一种测试用例构建装置。本发明的再一个目的在于提供一种计算机设备。本发明的还一个目的在于提供一种可读介质。本发明的还一个目的在于提供一种计算机程序产品。
4.为了达到以上目的,本发明的一方面公开了一种测试用例构建方法,所述方法包括:
5.根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景;
6.根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数;
7.根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,以构建与所述场景和所述场景的优先级系数对应的测试用例。
8.可选的,在所述根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景之前,进一步包括:
9.捕获应用中的在预设时间段内触发的多个初始事件,将所述多个初始事件中的事件信息格式进行调整,得到所述多个应用事件。
10.可选的,所述根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景,包括:
11.根据多个应用事件的所述事件触发信息,得到多个应用事件的事件触发时间;
12.根据多个应用事件的所述事件触发时间,将所述应用事件进行聚类处理得到多个场景。
13.可选的,所述根据多个应用事件的所述事件触发时间,将所述应用事件进行聚类处理得到多个场景,包括:
14.从多个应用事件中选取一个目标应用事件进行聚合得到场景,所述聚合得到场景具体包括以下步骤:根据所述目标应用事件的事件触发时间和多个应用事件中的其他应用事件的事件触发时间,得到目标应用事件与其他应用事件的第一触发时间差;
15.判断所述目标应用事件与其他应用事件的第一触发时间差是否小于预设的时间差阈值,若是,将所述目标应用事件与其他应用事件进行聚合形成事件集合;
16.对于所述事件集合中的每个应用事件,依次根据所述事件集合中的每个应用事件的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差;判断所述第二触发时间差是否小于预设的时间差阈值,若是,将多个应用事件中的除事件集合中应用事件以外的应用事件聚合至所述事件集合中;
17.重复执行对于所述事件集合中的每个应用事件,依次根据所述事件集合中的每个应用事件的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差;判断所述第二触发时间差是否小于预设的时间差阈值,若是,将多个应用事件中的除事件集合中应用事件以外的应用事件聚合至所述事件集合中的步骤,直到无法找到小于预设的时间差阈值的第二触发时间差所对应的除事件集合中应用事件以外的应用事件,所述事件集合即为所述多个场景中的其中一个场景;
18.从多个应用事件中除事件集合中的应用事件以外的剩余应用事件中重新确定一个目标应用事件重复执行聚合得到场景的步骤直至无法生成场景。
19.可选的,所述根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数,包括:
20.根据每个所述场景的场景信息,得到所述场景中所有应用事件的统一触发次数,所述统一触发次数即为所述场景触发次数;
21.根据每个所述场景的场景信息,得到所述场景的场景类型;
22.根据所述场景类型,得到所述场景的影响范围参数。
23.可选的,所述根据所述场景类型,得到所述场景的影响范围参数,包括:
24.按照预设的场景类型-影响范围参数对应关系,得到所述场景类型对应的所述场景的粗糙影响参数;
25.将所述粗糙影响参数进行归一化处理,得到所述场景类型对应的所述场景的影响范围参数。
26.可选的,所述根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,包括:
27.根据所述影响范围参数和所述范围占比系数,得到影响范围权重系数;
28.根据所有场景的所述场景触发次数,得到场景触发次数总和;
29.根据所述场景触发次数、场景触发次数总和以及所述次数占比系数,得到次数权
重系数;
30.根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数。
31.可选的,所述根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数,包括:
32.根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的初始优先级子系数;
33.将所述初始优先级子系数乘以预设的放大参数,得到每个所述场景的优先级系数。
34.可选的,在所述根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数之前,进一步包括:
35.根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件触发时间和事件触发类型;
36.将所述多个应用事件中的事件触发类型相同的应用事件进行聚合,得到多个同类事件触发集合;
37.根据所述多个应用事件的事件触发时间,得到每个同类事件触发集合中的多个事件触发时间间隔;
38.判断所述多个事件触发时间间隔中是否有连续的小于第一预设时间间隔阈值的事件触发时间间隔;
39.若是,判断所述连续的小于第一预设时间间隔阈值的事件触发时间间隔的数量是否大于或等于第一预设数量;
40.若是,根据所述同类事件触发集合的事件触发类型,向工作人员进行告警,以使工作人员根据所述事件触发类型,构建用于测试所述事件触发类型的应用事件的测试用例。
41.可选的,在所述根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数之前,进一步包括:
42.根据所述多个场景的场景信息,得到所述多个场景的场景触发时间和场景触发类型;
43.将所述多个场景中的场景触发类型相同的场景进行聚合,得到多个同类场景触发集合;
44.根据所述多个场景的场景触发时间,得到每个同类场景触发集合中的多个场景触发时间间隔;
45.判断所述多个场景触发时间间隔中是否有连续的小于第二预设时间间隔阈值的场景触发时间间隔;
46.若是,判断所述连续的小于第二预设时间间隔阈值的场景触发时间间隔的数量是否大于或等于第二预设数量;
47.若是,根据所述同类场景触发集合的场景触发类型,向工作人员进行告警,以使工作人员根据所述场景触发类型,构建用于测试所述场景触发类型的场景的测试用例。
48.可选的,在所述根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景之前,还包括:
49.根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件类型;
50.根据所述事件类型,判断所述应用事件是否属于系统异常型应用事件,若是,根据所述应用事件的事件类型向工作人员进行告警,以使工作人员根据所述应用事件,构建用于测试系统异常情况的测试用例。
51.为了达到以上目的,本发明的另一方面公开了一种测试用例构建装置,所述装置包括:
52.聚类模块,用于根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景;
53.子参数确定模块,用于根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数;
54.优先级系数确定模块,用于根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,以构建与所述场景和所述场景的优先级系数对应的测试用例。
55.本发明还公开了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述方法。
56.本发明还公开了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述方法。
57.本发明还公开了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上所述方法。
58.本发明提供的测试用例构建方法和装置,通过根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景,能够使所得到的每个场景包含多个有关联的应用事件,从而更准确地反映用户使用应用的实际使用情况;通过根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数,能够以场景对应的应用实际使用情况为基础,得到衡量场景重要性的参数,进而使后续生成的优先级系数更准确地反映应用的不同使用情况的重要性;通过根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,以构建与所述场景和所述场景的优先级系数对应的测试用例,能够实现所构建的测试用例是以反映实际使用情况的场景为基础的,还能够实现以优先级系数为基础,针对不同重要性的场景,构建与不同的重要性对应的不同结构、不同测试方案、不同测试内容的测试用例,从而提高了测试用例的构建的准确性,进而提高用所构建的测试用例对应用进行测试的准确性,还能够减少将测试后的应用进行实际投产应用时出现问题的数量和概率,从而减少测试人员需再次或多次对所构建的测试用例重新进行调整和修改以重新测试应用程序的概率,进而提高测试用例的构建的效率。综上所述,本发明提供的测试用例构建方法和装置,能够使所构建的测试用例更加符合应用的实际使用情况,提高测试用例的构建效率和准确性,进而提高用所构建的测试用例对应用进行测试的准确性。
附图说明
59.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
60.图1示出了本发明实施例的一种测试用例构建方法的流程示意图;
61.图2示出了本发明实施例的一种可选的将应用事件进行聚类处理得到多个场景的步骤示意图;
62.图3示出了本发明实施例的一种可选的得到每个场景的影响范围参数和场景触发次数的步骤示意图;
63.图4示出了本发明实施例的一种可选的得到每个场景的优先级系数的步骤示意图;
64.图5示出了本发明实施例的另一种可选的得到每个场景的优先级系数的步骤示意图;
65.图6示出了本发明实施例的一种测试用例构建装置的模块示意图;
66.图7示出适于用来实现本发明实施例的计算机设备的结构示意图。
具体实施方式
67.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
68.关于本文中所使用的“第一”、“第二”、
……
等,并非特别指称次序或顺位的意思,亦非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
69.关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
70.关于本文中所使用的“及/或”,包括所述事物的任一或全部组合。
71.需要说明的是,本发明技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
72.本发明实施例公开了一种测试用例构建方法,如图1所示,该方法具体包括如下步骤:
73.s101:根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景。
74.s102:根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数。
75.s103:根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,以构建与所述场景和所述场景的优先级系数对应的测试用例。
76.示例性的,所述构建与所述场景和所述场景的优先级系数对应的测试用例,有如下例子:
77.假设对于一个银行服务应用,有如下场景和对应的优先级:
78.场景a:用户点击查询余额按钮-》显示余额信息
79.优先级系数:9
80.场景b:用户点击关闭护眼模式按钮-》关闭护眼模式
81.优先级系数:2
82.场景c:用户点击修改昵称按钮-》显示昵称输入框-》用户输入昵称后点击昵称确认按钮-》更新用户昵称
83.优先级系数:6
84.场景d:用户点击更换头像按钮-》显示头像输入框-》用户上传头像后点击头像确认按钮-》更新用户头像
85.优先级系数:4
86.对应的,有如下预设的优先级系数范围与测试用例设计详细程度的对应表表1:
87.表1
[0088][0089]
根据预设的表1,可知对于场景a构建测试用例时,需要重点构建白盒测试类型的测试用例,测试用例需能够验证场景a中的每个环节的基本功能能否实现、需能够实现对于场景中的每个环节的边界测试和输入类型异常测试等的前提下,还要实现对于场景中的每个环节的抗攻击测试和抗过载测试;可知对于场景b构建测试用例时,仅需构建黑盒测试类型的测试用例,测试用例仅需能够验证能否实现场景的基本功能即可;可知对于场景c构建
测试用例时,需要重点构建白盒测试类型的测试用例,测试用例需能够验证场景中的每个环节的基本功能能否实现,并需能够实现对于场景中的每个环节的边界测试和输入类型异常测试等;可知对于场景d构建测试用例时,需要重点构建黑盒测试的测试用例,测试用例需在能够验证能否实现场景的基本功能的前提下,还能够实现相应的边界测试和输入类型异常测试。需要说明的是,在本发明实施例中,表1的测试用例详细程度,是随优先级系数区间的增加而增加的,但对于预设的优先级系数范围与测试用例设计详细程度的对应表的设计,并不限于上述说明,可由本领域技术人员根据实际情况确定。
[0090]
至于以场景为依据,按照与所述场景的优先级系数对应的测试用例详细程度,构建测试用例的实现,可以通过人工方式实现,也可以通过一些测试用例构建工具自动构建的方式实现,所述测试用例构建工具包括但不限于allpairs和acts等。需要说明的是,构建与所述场景和所述场景的优先级系数对应的测试用例的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0091]
本发明提供的测试用例构建方法和装置,通过根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景,能够使所得到的每个场景包含多个有关联的应用事件,从而更准确地反映用户使用应用的实际使用情况;通过根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数,能够以场景对应的应用实际使用情况为基础,得到衡量场景重要性的参数,进而使后续生成的优先级系数更准确地反映应用的不同使用情况的重要性;通过根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,以构建与所述场景和所述场景的优先级系数对应的测试用例,能够实现所构建的测试用例是以反映实际使用情况的场景为基础的,还能够实现以优先级系数为基础,针对不同重要性的场景,构建与不同的重要性对应的不同结构、不同测试方案、不同测试内容的测试用例,从而提高了测试用例的构建的准确性,进而提高用所构建的测试用例对应用进行测试的准确性,还能够减少将测试后的应用进行实际投产应用时出现问题的数量和概率,从而减少测试人员需再次或多次对所构建的测试用例重新进行调整和修改以重新测试应用程序的概率,进而提高测试用例的构建的效率。综上所述,本发明提供的测试用例构建方法和装置,能够使所构建的测试用例更加符合应用的实际使用情况,提高测试用例的构建效率和准确性,进而提高用所构建的测试用例对应用进行测试的准确性。
[0092]
在一个可选的实施方式中,在所述根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景之前,进一步包括:
[0093]
捕获应用中的在预设时间段内触发的多个初始事件,将所述多个初始事件中的事件信息格式进行调整,得到所述多个应用事件。
[0094]
示例性的,所述预设时间段,可以为但不限于当前时间的前一天、当前时间的前三天等,需要说明的是,对于所述预设时间段,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0095]
示例性的,所述初始事件的事件信息,可以包括但不限于事件的名称、事件触发时间、事件参与方标记、所属应用环境和所属应用适配系统等。
[0096]
示例性的,所述捕获应用中的在预设时间段内触发的多个初始事件,可以通过包括但不限于数据埋点等方式实现,为本领域常规技术手段,这里不再赘述。
[0097]
示例性的,所述将所述多个初始事件中的事件信息格式进行调整,为将初始事件中的事件信息的格式调整为便于分析、计算的格式,以减少后续步骤中对事件信息处理时出错或卡死的概率,并添加或删除部分事件信息中的参数,以提高后续步骤中对事件信息进行处理的速度。具体调整方式可由本领域技术人员根据实际情况进行确定。
[0098]
在一个可选的实施方式中,如图2所示,所述根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景,包括如下步骤:
[0099]
s201:根据多个应用事件的所述事件触发信息,得到多个应用事件的事件触发时间。
[0100]
s202:根据多个应用事件的所述事件触发时间,将所述应用事件进行聚类处理得到多个场景。
[0101]
示例性的,所述事件触发信息,包括但不限于事件触发用户信息、事件触发时间、事件触发类型、事件操作、事件编号、事件名称和事件触发所属系统等。
[0102]
示例性的,根据多个应用事件的所述事件触发信息,得到多个应用事件的事件触发时间,为本领域常规技术手段,这里不再赘述。
[0103]
通过根据多个应用事件的所述事件触发时间,将所述应用事件进行聚类处理得到多个场景,能够使所得到的每个场景中包含的应用事件在触发时间上较为接近,从而提高所得到的场景中包含的应用事件的关联性,进而使所得到的场景更准确地反映用户使用应用的实际使用情况。
[0104]
在一个可选的实施方式中,所述根据多个应用事件的所述事件触发时间,将所述应用事件进行聚类处理得到多个场景,包括:
[0105]
从多个应用事件中选取一个目标应用事件进行聚合得到场景,所述聚合得到场景具体包括以下步骤:根据所述目标应用事件的事件触发时间和多个应用事件中的其他应用事件的事件触发时间,得到目标应用事件与其他应用事件的第一触发时间差;
[0106]
判断所述目标应用事件与其他应用事件的第一触发时间差是否小于预设的时间差阈值,若是,将所述目标应用事件与其他应用事件进行聚合形成事件集合;
[0107]
对于所述事件集合中的每个应用事件,依次根据所述事件集合中的每个应用事件的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差;判断所述第二触发时间差是否小于预设的时间差阈值,若是,将多个应用事件中的除事件集合中应用事件以外的应用事件聚合至所述事件集合中;
[0108]
重复执行对于所述事件集合中的每个应用事件,依次根据所述事件集合中的每个应用事件的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差;判断所述第二触发时间差是否小于预设的时间差阈值,若是,将多个应用事件中的除事件集合中应用事件以外的应用事件聚合至所述事件集合中的步骤,直到无法找到小于预设的时间差阈值的第二触发时间差所对应的除事件集合中应用事件以外的应用事件,所述事件集合即为所述多个场景中的其中一个场景;
[0109]
从多个应用事件中除事件集合中的应用事件以外的剩余应用事件中重新确定一个目标应用事件重复执行聚合得到场景的步骤直至无法生成场景。
[0110]
示例性的,所述根据所述目标应用事件的事件触发时间和多个应用事件中的其他应用事件的事件触发时间,得到目标应用事件与其他应用事件的第一触发时间差,为本领域常规技术手段,这里不再赘述。
[0111]
示例性的,所述根据所述事件集合中的每个应用事件的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差,为本领域常规技术手段,这里不再赘述。
[0112]
示例性的,在一个预设的时间段内,一个银行服务应用触发了如下应用事件:
[0113]
应用事件1:用户点击查询余额按钮
[0114]
应用事件2:显示余额信息
[0115]
应用事件3:用户点击关闭护眼模式按钮
[0116]
应用事件4:关闭护眼模式
[0117]
应用事件5:用户点击修改昵称按钮
[0118]
应用事件6:显示昵称输入框
[0119]
应用事件7:用户输入昵称后点击昵称确认按钮
[0120]
应用事件8:更新用户昵称
[0121]
应用事件9:用户点击更换头像按钮
[0122]
应用事件10:显示头像输入框
[0123]
应用事件11:用户上传头像后点击头像确认按钮
[0124]
应用事件12:更新用户头像
[0125]
其中,所述预设的时间差阈值可由本领域技术人员根据实际情况确定,本发明实施例中对此并不做出限制。在这里,所述时间差阈值可以设定为0.5s。
[0126]
示例性的,所述目标应用事件为应用事件1,而应用事件1与其他应用事件中的应用事件2的第一触发时间差为0.4s,小于所述时间差阈值,所以可将应用事件1和应用事件2进行聚合形成事件集合{应用事件1,应用事件2}。而对于事件集合中的每个应用事件(即应用事件1和应用事件2),它们和应用事件3至应用事件12的第二触发时间差均没有小于时间差阈值0.5,所以此时已无法找到小于预设的时间差阈值的第二触发时间差所对应的除事件集合中应用事件以外的应用事件,此时所述事件集合{应用事件1,应用事件2}即为一个应用场景。
[0127]
示例性的,对应上文,所述多个应用事件中除事件集合中的应用事件以外的剩余应用事件为应用事件3至应用事件12,在这里,我们可以按照包括但不限于随机选取等方式重新确定一个作为目标应用事件的应用事件5。对于应用事件5,与其他应用事件中的应用事件6的第一触发时间差为0.2s,小于所述时间差阈值,所以可将应用事件5和应用事件6进行聚合形成又一个事件集合{应用事件5,应用事件6},而对于事件集合中的每个应用事件(即应用事件5,应用事件6)中的应用事件6,其与应用事件3、应用事件4以及应用事件7至应用事件12中的应用事件7的第二触发事件差为0.1s,小于所述时间差阈值,所以可将应用事件7聚合至上述事件集合中,此时事件集合为{应用事件5,应用事件6,应用事件7},而对于应用事件5,与应用事件3、应用事件4以及应用事件8至应用事件12中的任何一个的第二触发时间差均没有小于所述时间差阈值,所以暂不将应用事件3、应用事件4以及应用事件8至
应用事件12中的一或多个聚合到事件集合中。而对于应用事件7,与应用事件3、应用事件4以及应用事件8至应用事件12中的应用事件8的第二触发时间差为0.15s,小于所述时间差阈值,所以可将应用事件8聚合至上述集合中,此时事件集合为{应用事件5,应用事件6,应用事件7,应用事件8}。而对于事件集合中的每个应用事件(即应用事件5至应用事件8),它们和应用事件3、应用事件4以及应用事件9至应用事件12的第二触发时间差均没有小于时间差阈值0.5,所以此时已无法找到小于预设的时间差阈值的第二触发时间差所对应的除事件集合中应用事件以外的应用事件,此时所述事件集合{应用事件5,应用事件6,应用事件7,应用事件8}即为又一个应用场景。
[0128]
对应的,从多个应用事件中除事件集合中的应用事件以外的剩余应用事件中重新确定一个目标应用事件重复执行聚合得到场景的步骤直至无法生成场景,又可以得到两个应用场景,分别为{应用事件3,应用事件4}和{应用事件9,应用事件10,应用事件11,应用事件12},因为生成这两个场景的具体实现过程类似于上述说明,所以这里不再赘述。此时,所确定的所有场景分别为场景a:{应用事件1,应用事件2}、场景b:{应用事件3,应用事件4}、场景c:{应用事件5,应用事件6,应用事件7,应用事件8}和场景d{应用事件9,应用事件10,应用事件11,应用事件12}。
[0129]
需要说明的是,对于聚合得到场景的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0130]
通过按照上述方式将所述应用事件进行聚类处理得到多个场景,能够进一步提高所得到的场景中包含的应用事件的关联性,进而进一步使所得到的场景更准确地反映用户使用应用的实际使用情况。
[0131]
在一个可选的实施方式中,如图3所示,所述根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数,包括如下步骤:
[0132]
s301:根据每个所述场景的场景信息,得到所述场景中所有应用事件的统一触发次数,所述统一触发次数即为所述场景触发次数。
[0133]
s302:根据每个所述场景的场景信息,得到所述场景的场景类型。
[0134]
s303:根据所述场景类型,得到所述场景的影响范围参数。
[0135]
示例性的,所述场景信息,包括场景中的每个事件的事件触发信息,而所述事件触发信息又包括但不限于事件触发用户信息、事件触发时间、事件触发类型、事件操作、事件编号、事件名称和事件触发所属系统和事件触发次数等。由于场景中的多个应用事件是密切关联的,所以对于一个场景而言,它的多个应用事件的事件触发次数是相等的,所以在本发明实施例中,所述统一触发次数即为所述场景中任一个应用事件的事件触发次数,由此可知所述场景触发次数就是所述场景中任一个应用事件的事件触发次数。
[0136]
示例性的,所述根据每个所述场景的场景信息,得到所述场景的场景类型,可以通过人工方式对场景信息进行判断,确定所述场景的场景类型,也可以通过现有程序、训练好的神经网络等实现根据每个所述场景的场景信息得到所述场景的场景类型,还可以通过将场景信息中出现过的次数最多的事件触发类型作为所述场景类型的方式来实现。需要说明的是,对于所述根据每个所述场景的场景信息,得到所述场景的场景类型,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0137]
示例性的,所述场景类型,包括但不限于用户交流场景、划款交易场景等。需要说
明的是,对于所述场景类型,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0138]
通过上述步骤得到所述场景的影响范围参数和场景触发次数,能够提高所得到的影响范围参数和场景触发次数的准确性,从而提高后续步骤中生成的优先级系数的准确性,进而使所构建的测试用例更加符合应用的实际使用情况,提高测试用例的构建的准确性。
[0139]
在一个可选的实施方式中,所述根据所述场景类型,得到所述场景的影响范围参数,包括:
[0140]
按照预设的场景类型-影响范围参数对应关系,得到所述场景类型对应的所述场景的粗糙影响参数;
[0141]
将所述粗糙影响参数进行归一化处理,得到所述场景类型对应的所述场景的影响范围参数。
[0142]
示例性的,对于多种场景中的其中两种——用户交流场景和划款交易场景,所述场景类型-影响范围参数对应关系为:
[0143]
用户交流场景:粗糙影响参数为30
[0144]
划款交易场景:粗糙影响参数为90
[0145]
则由所述对应关系,能够直接得到所述两种场景的场景类型对应的粗糙影响参数。
[0146]
需要说明的是,对于所述场景类型-影响范围参数对应关系、场景类型的具体内容、场景类型的数量,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。进而,按照预设的场景类型-影响范围参数对应关系,得到所述场景类型对应的所述场景的粗糙影响参数的具体实现,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0147]
示例性的,所述将所述粗糙影响参数进行归一化处理,得到所述场景类型对应的所述场景的影响范围参数,具体为将粗糙影响参数通过乘以归一化系数,得到一个大小在0至1之间的值,所述值即为所述影响范围参数。示例性的,所述归一化系数包括但不限于0.1、0.01等,且所述归一化系数的数量包括但不限于一或多个。对于所述归一化处理,本领域技术人员也可以根据粗糙参数的大小选择特定的归一化系数。示例性的,对于用户交流场景的粗糙影响参数30,令其乘以归一化系数0.1,就能够得到影响范围参数0.3。需要说明的是,将所述粗糙影响参数进行归一化处理,得到所述场景类型对应的所述场景的影响范围参数的具体实现,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0148]
通过按照预设的场景类型-影响范围参数对应关系,得到所述场景类型对应的所述场景的粗糙影响参数,能够提高后续步骤中得到的影响范围参数的准确性,从而提高后续生成的优先级系数的准确性。通过将所述粗糙影响参数进行归一化处理,得到所述场景类型对应的所述场景的影响范围参数,能够使所述影响范围参数在参与运算时提高所述运算的速度。
[0149]
在一个可选的实施方式中,如图4所示,所述根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,包括如
下步骤:
[0150]
s401:根据所述影响范围参数和所述范围占比系数,得到影响范围权重系数。
[0151]
s402:根据所有场景的所述场景触发次数,得到场景触发次数总和。
[0152]
s403:根据所述场景触发次数、场景触发次数总和以及所述次数占比系数,得到次数权重系数。
[0153]
s404:根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数。
[0154]
示例性的,所述范围占比系数,可由本领域技术人员根据实际情况确定,例如可以为但不限于0.4。
[0155]
示例性的,所述次数占比系数,可由本领域技术人员根据实际情况确定,例如可以为但不限于0.6。
[0156]
示例性的,所述根据所述影响范围参数和所述范围占比系数,得到影响范围权重系数,可以为但不限于将所述影响范围参数乘以所述范围占比系数得到所述影响范围权重系数。需要说明的是,根据所述影响范围参数和所述范围占比系数,得到影响范围权重系数的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不能构成限制。
[0157]
示例性的,所述根据所有场景的所述场景触发次数,得到场景触发次数总和,可以为但不限于将所述所有场景的所述场景触发次数进行叠加,得到场景触发次数总和。需要说明的是,根据所有场景的所述场景触发次数,得到场景触发次数总和的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不能构成限制。
[0158]
示例性的,所述根据所述场景触发次数、场景触发次数总和以及所述次数占比系数,得到次数权重系数,可以为但不限于将所述场景触发次数除以场景触发次数总和得到比值,将所述比值乘以所述次数占比系数,得到次数权重系数。需要说明的是,根据所述场景触发次数、场景触发次数总和以及所述次数占比系数,得到次数权重系数的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不能构成限制。
[0159]
示例性的,所述根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数,可以为但不限于将所述影响范围权重系数加上所述次数权重系数,得到所述优先级系数。需要说明的是,根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不能构成限制。
[0160]
示例性的,所述根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,有如下式子:
[0161][0162]
其中,pr为优先级系数,a为次数占比系数,n为当前场景的场景触发次数,n为场景触发次数总和,b为范围占比系数,e为影响范围参数。
[0163]
其中,所述预设的范围占比系数和预设的次数占比系数均满足大小处于[0,1]的区间、以及所述预设的范围占比系数和预设的次数占比系数的和等于1的条件。
[0164]
通过上述步骤得到每个所述场景的优先级系数,能够进一步加强优先级系数和所
述场景的关联性,从而使得到的优先级系数能够更准确地反映场景的重要性,进而使以优先级为依据所构建的测试用例更准确。
[0165]
在一个可选的实施方式中,如图5所示,所述根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数,包括如下步骤:
[0166]
s501:根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的初始优先级子系数。
[0167]
s502:将所述初始优先级子系数乘以预设的放大参数,得到每个所述场景的优先级系数。
[0168]
示例性的,所述根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的初始优先级子系数,可以为但不限于将所述影响范围权重系数加上所述次数权重系数得到所述初始优先级子系数。
[0169]
示例性的,所述预设的放大参数,可由本领域技术人员根据实际情况确定,例如可以为但不限于10、100等。
[0170]
通过将所述初始优先级子系数乘以预设的放大参数,得到每个所述场景的优先级系数,能够通过将优先级系数进行放大,以在利用自动化工具构建测试用例时,减小所述自动化工具因为输入的优先级系数数据过小而出现错误的概率,从而提高通过测试用例构建工具等自动化工具构建与所述场景和所述场景的优先级系数对应的测试用例的准确性。
[0171]
在一个可选的实施方式中,在所述根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数之前,进一步包括:
[0172]
根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件触发时间和事件触发类型;
[0173]
将所述多个应用事件中的事件触发类型相同的应用事件进行聚合,得到多个同类事件触发集合;
[0174]
根据所述多个应用事件的事件触发时间,得到每个同类事件触发集合中的多个事件触发时间间隔;
[0175]
判断所述多个事件触发时间间隔中是否有连续的小于第一预设时间间隔阈值的事件触发时间间隔;
[0176]
若是,判断所述连续的小于第一预设时间间隔阈值的事件触发时间间隔的数量是否大于或等于第一预设数量;
[0177]
若是,根据所述同类事件触发集合的事件触发类型,向工作人员进行告警,以使工作人员根据所述事件触发类型,构建用于测试所述事件触发类型的应用事件的测试用例。
[0178]
示例性的,所述根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件触发时间和事件触发类型,为本领域常规技术手段,这里不再赘述。
[0179]
示例性的,对于所述将所述多个应用事件中的事件触发类型相同的应用事件进行聚合,得到多个同类事件触发集合,有如下例子:
[0180]
多个应用事件中有应用事件甲、应用事件乙、应用事件丙和应用事件丁,这些应用事件的事件触发类型均为对于备注提交按钮的点击,则将应用事件甲、应用事件乙、应用事件丙和应用事件丁进行聚合,得到一个同类事件触发集合。而对于多个应用事件中的其他应用事件,也按类似上述步骤的操作得到多个同类事件触发集合。需要说明的是,对于所述
将所述多个应用事件中的事件触发类型相同的应用事件进行聚合,得到多个同类事件触发集合的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0181]
示例性的,根据所述多个应用事件的事件触发时间,得到每个同类事件触发集合中的多个事件触发时间间隔,有如下例子:
[0182]
对于某个同类事件触发集合中的多个应用事件——应用事件甲、应用事件乙、应用事件丙和应用事件丁,它们的事件触发时间按照先后顺序是应用事件甲、应用事件乙、应用事件丙和应用事件丁,那么所述多个事件触发时间间隔则分别为应用事件甲和应用事件乙的触发时间间隔、应用事件乙和应用事件丙的触发事件间隔以及应用事件丙和应用事件丁的触发时间间隔,即对于一个同类事件触发集合而言,所述多个触发时间间隔仅为该集合中触发时间相邻的两个应用事件的触发时间间隔。
[0183]
需要说明的是,根据所述多个应用事件的事件触发时间,得到每个同类事件触发集合中的多个事件触发时间间隔的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0184]
示例性的,所述第一预设时间间隔可由本领域技术人员根据实际情况确定,例如可以确定为但不限于0.1s。
[0185]
示例性的,所述第一预设数量可由本领域技术人员根据实际情况确定,例如可以确定为但不限于3。
[0186]
示例性的,所述根据所述同类事件触发集合的事件触发类型,向工作人员进行告警,可以为但不限于向工作人员发送“xx类型的事件出现了连续触发的情况,请工作人员确定与该事件有关的控件是否存在逻辑异常或内网卡顿问题”。
[0187]
通过上述步骤,能够在用户连续对应用执行同一操作时(如因为网络卡顿而连续点击某个提交按钮)的情况时,侦测到这种情况,向工作人员进行告警,使工作人员能够构建与所述同一操作有关的应用事件相关测试用例,从而实现对这些应用事件有关的程序、控件等进行专门测试,并根据测试结果进行对这些程序、控件的改善,从而提高用户的体验。
[0188]
在一个可选的实施方式中,在所述根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数之前,进一步包括:
[0189]
根据所述多个场景的场景信息,得到所述多个场景的场景触发时间和场景触发类型;
[0190]
将所述多个场景中的场景触发类型相同的场景进行聚合,得到多个同类场景触发集合;
[0191]
根据所述多个场景的场景触发时间,得到每个同类场景触发集合中的多个场景触发时间间隔;
[0192]
判断所述多个场景触发时间间隔中是否有连续的小于第二预设时间间隔阈值的场景触发时间间隔;
[0193]
若是,判断所述连续的小于第二预设时间间隔阈值的场景触发时间间隔的数量是否大于或等于第二预设数量;
[0194]
若是,根据所述同类场景触发集合的场景触发类型,向工作人员进行告警,以使工
作人员根据所述场景触发类型,构建用于测试所述场景触发类型的场景的测试用例。
[0195]
示例性的,所述根据所述多个场景的场景信息,得到所述多个场景的场景触发时间和场景触发类型,可以为但不限于从所述场景信息中得到所述场景中包含的所有应用事件的事件信息,再从所述应用事件的事件信息中得到应用事件触发时间,从多个应用时间触发时间中任选一个作为所述场景的场景触发时间,而所述场景触发类型的确定,可以为但不限于通过现有神经网络计算或人工标记等方式进行确定。
[0196]
示例性的,对于所述将所述多个场景中的场景触发类型相同的场景进行聚合,得到多个同类场景触发集合,有如下例子:
[0197]
多个场景中有场景甲、场景乙、场景丙和场景丁,这些场景的场景触发类型均为上传申诉信息,则将场景甲、场景乙、场景丙和场景丁进行聚合,得到一个同类场景触发集合。而对于多个场景中的其他场景,也按类似上述步骤的操作得到多个同类场景触发集合。需要说明的是,对于所述将所述多个场景中的场景触发类型相同的场景进行聚合,得到多个同类场景触发集合的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0198]
示例性的,根据所述多个场景的场景触发时间,得到每个同类场景触发集合中的多个场景触发时间间隔,有如下例子:
[0199]
对于某个同类场景触发集合中的多个场景——场景甲、场景乙、场景丙和场景丁,它们的事件触发时间按照先后顺序是场景甲、场景乙、场景丙和场景丁,那么所述多个场景触发时间间隔则分别为场景甲和场景乙的触发时间间隔、场景乙和场景丙的触发事件间隔以及场景丙和场景丁的触发时间间隔,即对于一个同类场景触发集合而言,所述多个触发时间间隔仅为该集合中触发时间相邻的两个场景的触发时间间隔。
[0200]
需要说明的是,根据所述多个应用场景的场景触发时间,得到每个同类场景触发集合中的多个场景触发时间间隔的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0201]
示例性的,所述第二预设时间间隔可由本领域技术人员根据实际情况确定,例如可以确定为但不限于0.4s。
[0202]
示例性的,所述第二预设数量可由本领域技术人员根据实际情况确定,例如可以确定为但不限于2。
[0203]
示例性的,所述根据所述同类场景触发集合的场景触发类型,向工作人员进行告警,可以为但不限于向工作人员发送“xx类型的场景出现了连续触发的情况,请工作人员确定与该场景有关的控件是否存在逻辑异常或内网卡顿问题”。
[0204]
通过上述步骤,能够在用户连续对应用执行同一系列的操作时(如因为网络卡顿而连续进行上传某个待提交文件并点击对应提交按钮的组合操作)的情况时,侦测到这种情况,向工作人员进行告警,使工作人员能够构建与所述同一系列操作有关的场景相关测试用例,从而实现对这些场景有关的程序、控件等进行专门测试,并根据测试结果进行对这些程序、控件的改善,从而提高用户的体验。
[0205]
在一个可选的实施方式中,在所述根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景之前,还包括:
[0206]
根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件类型;
[0207]
根据所述事件类型,判断所述应用事件是否属于系统异常型应用事件,若是,根据所述应用事件的事件类型向工作人员进行告警,以使工作人员根据所述应用事件,构建用于测试系统异常情况的测试用例。
[0208]
示例性的,在所述应用事件为异常事件时(例如生成报错信息、访问错误时),所述事件类型还包括异常类型,对应的,所述根据所述事件类型,判断所述应用事件是否属于系统异常型应用事件,可以为但不限于通过判断所述异常类型是否符合预设的系统异常类型实现,而所述预设的系统异常类型可以包括但不限于控件依赖函数不存在、内存访问错误等。需要说明的是,根据所述事件类型,判断所述应用事件是否属于系统异常型应用事件的具体实现方式,可由本领域技术人员根据实际情况确定,上述说明仅为举例,对此并不构成限制。
[0209]
示例性的,所述根据所述应用事件的事件类型向工作人员进行告警,为本领域常规技术手段,这里不再赘述。
[0210]
通过根据所述应用事件的事件类型向工作人员进行告警,以使工作人员根据所述应用事件,构建用于测试系统异常情况的测试用例,能够实现对应用的系统异常情况进行准确测试,从而使开发人员能够更准确地解决应用中系统异常的情况,进而提高用户的体验。
[0211]
基于相同原理,本发明实施例公开了一种测试用例构建装置600,如图6所示,该测试用例构建装置600包括:
[0212]
聚类模块601,用于根据多个应用事件的事件触发信息,将所述应用事件进行聚类处理得到多个场景。
[0213]
子参数确定模块602,用于根据每个所述场景的场景信息,得到每个所述场景的影响范围参数和场景触发次数。
[0214]
优先级系数确定模块603,用于根据所述影响范围参数、场景触发次数、预设的范围占比系数和预设的次数占比系数,得到每个所述场景的优先级系数,以构建与所述场景和所述场景的优先级系数对应的测试用例。
[0215]
在一个可选的实施方式中,还包括事件捕获模块,用于:
[0216]
捕获应用中的在预设时间段内触发的多个初始事件,将所述多个初始事件中的事件信息格式进行调整,得到所述多个应用事件。
[0217]
在一个可选的实施方式中,所述聚类模块601,用于:
[0218]
根据多个应用事件的所述事件触发信息,得到多个应用事件的事件触发时间;
[0219]
根据多个应用事件的所述事件触发时间,将所述应用事件进行聚类处理得到多个场景。
[0220]
在一个可选的实施方式中,所述聚类模块601,进一步用于:
[0221]
从多个应用事件中选取一个目标应用事件进行聚合得到场景,所述聚合得到场景具体包括以下步骤:根据所述目标应用事件的事件触发时间和多个应用事件中的其他应用事件的事件触发时间,得到目标应用事件与其他应用事件的第一触发时间差;
[0222]
判断所述目标应用事件与其他应用事件的第一触发时间差是否小于预设的时间差阈值,若是,将所述目标应用事件与其他应用事件进行聚合形成事件集合;
[0223]
对于所述事件集合中的每个应用事件,依次根据所述事件集合中的每个应用事件
的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差;判断所述第二触发时间差是否小于预设的时间差阈值,若是,将多个应用事件中的除事件集合中应用事件以外的应用事件聚合至所述事件集合中;
[0224]
重复执行对于所述事件集合中的每个应用事件,依次根据所述事件集合中的每个应用事件的事件触发时间和多个应用事件中的除事件集合中应用事件以外的应用事件的事件触发时间,得到事件集合中的每个应用事件和多个应用事件中的除事件集合中应用事件以外的应用事件的第二触发时间差;判断所述第二触发时间差是否小于预设的时间差阈值,若是,将多个应用事件中的除事件集合中应用事件以外的应用事件聚合至所述事件集合中的步骤,直到无法找到小于预设的时间差阈值的第二触发时间差所对应的除事件集合中应用事件以外的应用事件,所述事件集合即为所述多个场景中的其中一个场景;
[0225]
从多个应用事件中除事件集合中的应用事件以外的剩余应用事件中重新确定一个目标应用事件重复执行聚合得到场景的步骤直至无法生成场景。
[0226]
在一个可选的实施方式中,所述子参数确定模块602,用于:
[0227]
根据每个所述场景的场景信息,得到所述场景中所有应用事件的统一触发次数,所述统一触发次数即为所述场景触发次数;
[0228]
根据每个所述场景的场景信息,得到所述场景的场景类型;
[0229]
根据所述场景类型,得到所述场景的影响范围参数。
[0230]
在一个可选的实施方式中,所述子参数确定模块602,进一步用于:
[0231]
按照预设的场景类型-影响范围参数对应关系,得到所述场景类型对应的所述场景的粗糙影响参数;
[0232]
将所述粗糙影响参数进行归一化处理,得到所述场景类型对应的所述场景的影响范围参数。
[0233]
在一个可选的实施方式中,所述优先级系数确定模块603,用于:
[0234]
根据所述影响范围参数和所述范围占比系数,得到影响范围权重系数;
[0235]
根据所有场景的所述场景触发次数,得到场景触发次数总和;
[0236]
根据所述场景触发次数、场景触发次数总和以及所述次数占比系数,得到次数权重系数;
[0237]
根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的优先级系数。
[0238]
在一个可选的实施方式中,所述优先级系数确定模块603,进一步用于:
[0239]
根据所述影响范围权重系数和所述次数权重系数,得到每个所述场景的初始优先级子系数;
[0240]
将所述初始优先级子系数乘以预设的放大参数,得到每个所述场景的优先级系数。
[0241]
在一个可选的实施方式中,还包括同类事件触发告警模块,用于:
[0242]
根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件触发时间和事件触发类型;
[0243]
将所述多个应用事件中的事件触发类型相同的应用事件进行聚合,得到多个同类
事件触发集合;
[0244]
根据所述多个应用事件的事件触发时间,得到每个同类事件触发集合中的多个事件触发时间间隔;
[0245]
判断所述多个事件触发时间间隔中是否有连续的小于第一预设时间间隔阈值的事件触发时间间隔;
[0246]
若是,判断所述连续的小于第一预设时间间隔阈值的事件触发时间间隔的数量是否大于或等于第一预设数量;
[0247]
若是,根据所述同类事件触发集合的事件触发类型,向工作人员进行告警,以使工作人员根据所述事件触发类型,构建用于测试所述事件触发类型的应用事件的测试用例。
[0248]
在一个可选的实施方式中,还包括同类场景触发告警模块,用于:
[0249]
根据所述多个场景的场景信息,得到所述多个场景的场景触发时间和场景触发类型;
[0250]
将所述多个场景中的场景触发类型相同的场景进行聚合,得到多个同类场景触发集合;
[0251]
根据所述多个场景的场景触发时间,得到每个同类场景触发集合中的多个场景触发时间间隔;
[0252]
判断所述多个场景触发时间间隔中是否有连续的小于第二预设时间间隔阈值的场景触发时间间隔;
[0253]
若是,判断所述连续的小于第二预设时间间隔阈值的场景触发时间间隔的数量是否大于或等于第二预设数量;
[0254]
若是,根据所述同类场景触发集合的场景触发类型,向工作人员进行告警,以使工作人员根据所述场景触发类型,构建用于测试所述场景触发类型的场景的测试用例。
[0255]
在一个可选的实施方式中,还包括系统异常告警模块,用于:
[0256]
根据所述多个应用事件的事件触发信息,得到所述多个应用事件的事件类型;
[0257]
根据所述事件类型,判断所述应用事件是否属于系统异常型应用事件,若是,根据所述应用事件的事件类型向工作人员进行告警,以使工作人员根据所述应用事件,构建用于测试系统异常情况的测试用例。
[0258]
由于该测试用例构建装置600解决问题的原理与以上方法类似,因此本测试用例构建装置600的实施可以参见以上的方法的实施,在此不再赘述。
[0259]
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0260]
在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述方法。
[0261]
下面参考图7,其示出了适于用来实现本技术实施例的计算机设备700的结构示意图。
[0262]
如图7所示,计算机设备700包括中央处理单元(cpu)701,其可以根据存储在只读
存储器(rom)702中的程序或者从存储部分708加载到随机访问存储器(ram)703中的程序而执行各种适当的工作和处理。在ram703中,还存储有系统700操作所需的各种程序和数据。cpu701、rom702、以及ram703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。
[0263]
以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(crt)、液晶反馈器(lcd)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如lan卡,调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装如存储部分708。
[0264]
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包括用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。
[0265]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0266]
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本技术时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0267]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0268]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0269]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0270]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0271]
本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0272]
本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0273]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0274]
以上所述仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1