CN106569938B - 应用程序的压力测试方法和装置 - Google Patents
应用程序的压力测试方法和装置 Download PDFInfo
- Publication number
- CN106569938B CN106569938B CN201610956824.5A CN201610956824A CN106569938B CN 106569938 B CN106569938 B CN 106569938B CN 201610956824 A CN201610956824 A CN 201610956824A CN 106569938 B CN106569938 B CN 106569938B
- Authority
- CN
- China
- Prior art keywords
- control
- selection information
- input operation
- effective control
- coordinate
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/349—Performance evaluation by tracing or monitoring for interfaces, buses
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开一种应用程序的压力测试方法和装置,涉及计算机领域,为解决应用程序的压力测试的效率低的问题。所述应用程序的压力测试方法,包括:设置表征对应用程序的有效控件进行输入操作的控件选择信息集合和表征对随机生成的坐标点进行输入操作的坐标选择信息集合;根据随机生成的操作对象选择信息属于控件选择信息集合或坐标选择信息集合,确定输入操作的对象为有效控件还是随机生成的坐标点;确定输入操作的对象为有效控件时,对有效控件之一进行输入操作;确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。本发明提供的应用程序的压力测试方法和装置应用于对应用程序进行压力测试的场景中。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种应用程序的压力测试方法和装置。
背景技术
随着诸如移动终端之类的计算设备的普及,为计算设备开发的大量应用程序在人们的生活、学习、以及娱乐中占据了越来越重要的地位。为了保证应用程序在用户使用时具有较高的稳定性,在应用程序的开发过程中均需要对应用程序进行压力测试。应用程序的压力测试,即在应用程序的开发过程中模拟用户对应用程序的各种操作,从而测试应用程序是否能在高操作次数和长操作时间的场景中保证稳定性。
目前,在对应用程序进行压力测试时,通常是随机生成输入操作的坐标点,并在计算设备屏幕的对应位置上进行输入操作。但是,由于坐标点的生成具有随机性,因此大量坐标点都位于应用程序的显示界面的功能区域外,使得在压力测试过程中会多次出现输入操作无效的情况。输入操作无效的情况并不能产生压力测试中的有效数据,从而导致应用程序的压力测试的效率很低。
发明内容
本发明提供了一种应用程序的压力测试方法和装置,能够提高应用程序的压力测试的效率。
一方面,本发明提供了一种应用程序的压力测试方法,包括:
设置应用程序的控件选择信息集合和坐标选择信息集合,控件选择信息集合由表征选择应用程序的有效控件作为输入操作的对象的控件选择信息组成,坐标选择信息集合由表征选择随机生成的坐标点作为输入操作的对象的坐标选择信息组成,有效控件为能够接收输入操作并给出反馈的控件;
根据随机生成的操作对象选择信息属于控件选择信息集合还是坐标选择信息集合,确定输入操作的对象为有效控件还是随机生成的坐标点;
当确定输入操作的对象为有效控件时,对有效控件之一进行输入操作;
当确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。
另一方面,本发明提供了一种应用程序的压力测试装置,包括:
集合设置单元,被配置为设置应用程序的控件选择信息集合和坐标选择信息集合,控件选择信息集合由表征选择应用程序的有效控件作为输入操作的对象的控件选择信息组成,坐标选择信息集合由表征选择随机生成的坐标点作为输入操作的对象的坐标选择信息组成,有效控件为能够接收输入操作并给出反馈的控件;
对象确定单元,被配置为根据随机生成的操作对象选择信息属于控件选择信息集合还是坐标选择信息集合,确定输入操作的对象为有效控件还是随机生成的坐标点;
第一操作单元,被配置为在所述对象确定单元确定输入操作的对象为有效控件时,对有效控件之一进行输入操作;
第二操作单元,被配置为在所述对象确定单元确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。
本发明提供的一种应用程序的压力测试方法和装置,根据设置的应用程序中表征选择有效控件作为输入操作的对象的控件选择信息组成的控件选择信息集合,以及选择随机生成的坐标点作为输入操作的对象的坐标选择信息组成的坐标选择信息集合,确定输入操作的对象,当确定输入操作的对象为有效控件时,对有效控件之一进行输入操作,当确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。由于有效控件在接收输入操作后能够给出反馈,使得输入操作有效,而压力测试中既有可能对有效控件进行输入操作,也有可能对随机生成的坐标点进行输入操作,加入了对有效控件进行输入操作的可能性,降低了对随机生成的坐标点进行输入操作的可能性,降低了无效输入操作出现的概率,从而提高了应用程序的压力测试的效率。
附图说明
从下面结合附图对本发明的具体实施方式的描述中可以更好地理解本发明,其中:
通过阅读以下参照附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显,其中,相同或相似的附图标记表示相同或相似的特征。
图1为本发明实施例提供的一种应用程序的压力测试方法的流程图之一;
图2为本发明实施例提供的一种应用程序的压力测试方法的流程图之二;
图3为本发明实施例提供的一种应用程序的压力测试方法的流程图之三;
图4为本发明实施例提供的一种应用程序的压力测试方法的流程图之四;
图5为本发明实施例提供的一种应用程序的压力测试方法的流程图之五;
图6为本发明实施例提供的一种应用程序的压力测试方法的流程图之六;
图7为本发明实施例提供的一种应用程序的压力测试方法的流程图之七;
图8为本发明实施例提供的一种应用程序的压力测试装置的结构示意图之一;
图9为本发明实施例提供的一种应用程序的压力测试装置的结构示意图之二;
图10为本发明实施例提供的一种应用程序的压力测试装置的结构示意图之三;
图11为本发明实施例提供的一种应用程序的压力测试装置的结构示意图之四。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例。在下面的详细描述中,提出了许多具体细节,以便提供对本发明的全面理解。但是,对于本领域技术人员来说很明显的是,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明的更好的理解。本发明决不限于下面所提出的任何具体配置和算法,而是在不脱离本发明的精神的前提下覆盖了元素、部件和算法的任何修改、替换和改进。在附图和下面的描述中,没有示出公知的结构和技术,以便避免对本发明造成不必要的模糊。
本领域技术人员应能理解,上述实施例均是示例性而非限制性的。在不同实施例中出现的不同技术特征可以进行组合,以取得有益效果。本领域技术人员在研究附图、说明书及权利要求书的基础上,应能理解并实现所揭示的实施例的其他变化的实施例。在权利要求书中,术语“包括”并不排除其他装置或步骤;不定冠词“一个”不排除多个;术语“第一”、“第二”用于标示名称而非用于表示任何特定的顺序。权利要求中的任何附图标记均不应被理解为对保护范围的限制。权利要求中出现的多个部分的功能可以由一个单独的硬件或软件模块来实现。某些技术特征出现在不同的从属权利要求中并不意味着不能将这些技术特征进行组合以取得有益效果。
本发明提供的应用程序的压力测试方法和装置可以应用在安装有应用程序的计算设备上,计算设备具体可以为计算机、手机以及平板电脑等,利用本发明提供的应用程序的压力测试方法和装置,能够减少无效输入操作的概率,提高计算设备中进行的压力测试的效率。
请参阅图1,图1为本发明实施例提供的一种应用程序的压力测试方法的流程图之一,如图1所示的这种应用程序的压力测试方法包括步骤101-步骤104,步骤101-步骤104的具体内容如下:
步骤101,设置应用程序的控件选择信息集合和坐标选择信息集合。
其中,控件选择信息集合由表征选择应用程序的有效控件作为输入操作的对象的控件选择信息组成,坐标选择信息集合表征选择随机生成的坐标点作为输入操作的对象的坐标选择信息组成,也就是说,控件选择信息集合包括至少一条控件选择信息,坐标选择信息集合包括至少一条坐标选择信息,控件选择信息和坐标选择信息均可以具体为数字、字母、特殊符号等字符中的一项或多项组合,这里并不限制控件选择信息和坐标选择信息的内容组成以及长度。有效控件为能够接收输入操作并给出反馈的控件,比如,接受输入操作后,能够进入应用程序的某一界面的进入按钮;还比如,接受输入操作后,能够关闭应用程序当前界面的关闭按钮等。随机生成的坐标点一般为终端显示屏上随机生成的一个或多个坐标点。具体的,控件选择信息集合和坐标选择信息集合可以写入应用程序的配置文件或配置代码中,计算设备可以通过读取应用程序的配置文件或配置代码来获取控件选择信息集合和坐标选择信息集合。
步骤102,根据随机生成的操作对象选择信息属于控件选择信息集合还是坐标选择信息集合,确定输入操作的对象为有效控件还是随机生成的坐标点。
其中,控件选择信息集合和坐标选择信息集合的交集为空集,随机生成的操作对象选择信息属于控件选择信息集合,或者随机生成的操作对象选择信息属于坐标选择信息集合,根据控件选择信息集合和坐标选择信息集合,能够确定输入操作的对象。如果随机生成的操作对象选择信息属于控件选择信息集合,则确定输入操作的对象为有效控件;如果随机生成的操作对象选择信息属于坐标选择信息集合,则确定输入操作的对象为随机生成的坐标点。
步骤103,当确定输入操作的对象为有效控件时,对有效控件之一进行输入操作。
其中,应用程序的界面中往往存在多个有效控件,在确定输入操作的对象为有效控件时,对多个有效控件中的任意一个进行输入操作即可。当应用程序的界面中只存在一个有效控件时,则对这一个有效控件进行输入操作。
步骤104,当确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。
其中,计算设备能够随机生成坐标点,对已经随机生成的坐标点进行输入操作。若随机生成一个坐标点,则对该坐标点进行输入操作,如果随机生成多个坐标点,则对多个坐标点中的任意一个进行输入操作。
比如:控件选择信息集合为包括数字1~30的集合,坐标选择信息集合为包括数字31~40的集合,若随机生成的操作对象选择信息为数字9,则随机生成的操作对象选择信息属于控件选择信息集合,则确定输入操作的对象为有效控件;若随机生成的操作对象选择信息为数字36,则随机生成的操作对象选择信息属于坐标选择信息集合,确定输入操作的对象为随机生成的坐标点。
又比如,控件选择信息集合为{A1,A2,A3,A4,A5},坐标选择信息集合为{B1,B2,B3,B4},若随机生成的操作对象选择信息为A2,则确定输入操作的对象为有效控件;若随机生成的操作对象选择信息为B3,则确定输入操作的对象为随机生成的坐标点。
需要说明的是,在应用程序进行压力测试时,会多次重复步骤101-步骤104,以产生多次输入操作,从而达到测试应用程序在高操作次数和长操作时间的场景中是否能够保证稳定性的目的。
本发明实施例提供的一种应用程序的压力测试方法,根据设置的应用程序中表征选择有效控件作为输入操作的对象的控件选择信息组成的控件选择信息集合,以及选择随机生成的坐标点作为输入操作的对象的坐标选择信息组成的坐标选择信息集合,确定输入操作的对象,当确定输入操作的对象为有效控件时,对有效控件之一进行输入操作,当确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。由于有效控件在接收输入操作后能够给出反馈,使得输入操作有效,而压力测试中既有可能对有效控件进行输入操作,也有可能对随机生成的坐标点进行输入操作,加入了对有效控件进行输入操作的可能性,降低了对随机生成的坐标点进行输入操作的可能性,降低了无效输入操作出现的概率,从而提高了应用程序的压力测试的效率。
为了进一步提高应用程序压力测试的效率,上述实施例中的步骤101可以细化为步骤1011-步骤1013,图2为本发明实施例提供的应用程序的压力测试方法的流程图之二,如图2所示,步骤1011-步骤1013的具体内容如下:
步骤1011,设置控件选择信息集合。
其中,在进行压力测试时,设置一个初始控件选择信息集合,并将该初始控件选择信息集合作为控件选择信息集合。步骤1011可以与步骤1012-步骤1013同步执行,也可以先后执行,并不限定步骤1011与步骤1012-步骤1013的执行先后顺序。
步骤1012,设置初始坐标选择信息集合。
其中,初始坐标选择信息集合是确定输入操作的对象时参考的坐标选择信息集合的一个子集。
步骤1013,根据有效控件的种类数目,向初始坐标选择信息集合添加新的坐标选择信息,从而形成坐标选择信息集合。
其中,新的坐标选择信息的条数与有效控件的种类数目成比例。具体的,可以设置每个有效控件的种类均对应有至少一条坐标选择信息,当有效控件的种类数目增大时,随机生成的坐标点位于有效控件的位置上的概率也随之增加,可以适当扩大初始坐标选择信息集合,将每个有效控件的种类对应的坐标选择信息全部添加到初始坐标选择信息集合中,形成确定输入操作的对象时使用的坐标选择信息集合,以扩大初始坐标选择信息集合。值得一提的是,不同控件种类对应的坐标选择信息的数目可以相同,也可以不同。
比如,控件选择信息集合为包括数字1~30的集合,初始坐标选择信息集合为包括数字31~40的集合,有效控件的种类数目为两种,第一种有效控件对应有五条坐标选择信息,分别为数字41、42、43、44和45,第二种有效控件对应有四条坐标选择信息,分别为数字46、47、48和49,将第一种有效控件对应的坐标选择信息和第二种有效控件对应的坐标选择信息均加入初始坐标选择信息集合,得到的坐标选择信息集合为包括数字31~49的集合。
需要说明的是,在应用程序中有效控件的种类较多的场景中,往往有效控件的个数也较多,有效控件占据应用程序界面的面积比例也比较大,在有效控件占据应用程序的界面的面积比例比较大的时,随机生成的坐标点位于有效控件的位置上的概率得到提升,使得对随机生成的坐标点进行输入操作也能够得到反馈的概率大大增加,从而进一步减少了无效输出操作出现的概率,进一步提高了应用程序压力测试的效率。
当有效控件的种类数目至少为两种时,还可以进一步确定对何种种类的有效控件进行输入操作,需要说明的是,有效控件的种类具体可以包括但不限于按钮(buttons)、图像(images)、表格视图(table views)和静态文本框(static texts)。下面将介绍两种确定对何种种类的有效控件进行输入操作的方法,但需要注意的是,确定对何种种类的有效控件进行输入操作的方法并不限于以下两种方法。
方法一,上述实施例中的步骤103可以具体细化为步骤1031,图3为本发明实施例提供的应用程序的压力测试方法的流程图之三,如图3所示,步骤1031的具体内容如下:
步骤1031,当确定输入操作的对象为有效控件时,确定操作对象选择信息所属的子集,并对操作对象选择信息所属的子集对应的有效控件之一进行输入操作。
其中,每个种类的有效控件均对应控件选择信息集合的一个子集,且任意每两个种类的有效控件对应的子集的交集为空集,保证根据随机生成的操作对象选择信息能够确定一个种类的有效控件。
比如,控件选择信息集合为包括数字1~30的集合,进行压力测试的应用程序的有效控件包括按钮和表格视图,设置按钮对应的控件选择信息集合的子集包括数字1~10,表格视图对应的控件选择信息集合的子集包括数字11~30,随机生成的操作对象选择信息为数字16,已经确定输入操作的对象为有效控件,随机生成的操作对象选择信息属于表格视图对应的子集,则接受输入操作的有效控件为表格视图,对应用程序中的任意一个表格视图进行输入操作。
方法二,请参阅图4,上述实施例中的步骤103可以具体细化为步骤1032,图4为本发明实施例提供的应用程序的压力测试方法的流程图之四,如图4所示,步骤1032的具体内容如下:
步骤1032,当确定输入操作的对象为有效控件时,随机生成控件种类选择信息,并对控件种类指示信息所属的控件种类指示信息集合对应的有效控件之一进行输入操作。
其中,每个种类的有效控件分别对应有一个预设的控件种类指示信息集合,每个控件种类指示信息集合包括至少一条控件种类指示信息,控件种类指示信息具体可以为数字、字母、特殊符号等字符中的一项或多项组合,这里并不限制控件种类指示信息的内容组成以及长度,且控件种类指示信息集合中的控件种类指示信息与控件选择信息集合中的指示信息可以是同种类型,也可以是不同类型。随机生成的控件种类选择信息属于多个控件种类指示信息中的一个控件种类指示信息集合,也就是说,随机生成的控件种类选择信息与某一个控件种类指示信息集合中的一个控件种类指示信息相同。需要说明的是,控件种类指示信息集合也可以写入应用程序的配置文件或配置代码中,计算设备可以通过读取应用程序的配置文件或配置代码来获取控件种类指示信息集合。
比如,当确定输入操作的对象为有效控件时,且有效控件的种类包括图像、静态文本框和按钮,图像对应的控件种类指示信息集合为{C1,C2,C3},静态文本框对应的控件种类指示信息集合为{C4,C5,C6,C7},按钮对应的控件种类指示信息集合为{C8,C9,C10},随机生成的控件种类选择信息为C4,则接受输入操作的对象为静态文本框,对应用程序中的任意一个静态文本框进行输入操作。需要说明的是,若控件种类指示信息所属的控件种类指示信息集合对应的有效控件只有一个,则对该有效控件进行输入操作;若控件种类指示信息所属的控件种类指示信息集合对应的有效控件有多个,则对这多个有效控件中任意一个有效控件进行输入操作。
但需要注意的是,由于预先设置的控件种类指示信息集合可能不完整,或出现其他运行意外,随机生成的控件种类选择信息有可能不属于任意一个控件种类指示信息集合,控件种类选择信息的状态为不可见。为了在控件种类选择信息状态不可见时,以及出现其他运行意外时,能够进行压力测试,还可以增添步骤1033-步骤1034,图5为本发明实施例提供的应用程序的压力测试方法的流程图之五,如图5所示,步骤1033-步骤1034的具体内容如下:
步骤1033,判断是否存在控件种类选择信息所属的控件种类指示信息集合。
由于控件种类指示信息集合可能不完整,或由于其他原因使得控件种类指示信息集合为空集,无法判定对何种控件种类的控件进行操作,若不存在控件种类选择信息所属的控件种类指示信息集合,执行步骤1034;若存在控件种类选择信息所属的控件种类指示信息集合,则执行上述步骤1032。
步骤1034,若不存在控件种类选择信息所属的控件种类指示信息集合,对随机生成的坐标点进行输入操作。
为了在防止在获取控件时出现意外导致的本次压力测试失效,若不存在控件种类选择信息所属的控件种类指示信息集合时,对随机生成的坐标点进行输入操作。
方法一和方法二中的实施例能够进一步的确定输入操作的对象为哪个种类的有效控件,通过设置控件选择信息集合的子集的范围,或者,通过设置控件种类指示信息集合的范围,能够有指向性的提高某一种或某几种种类的有效控件作为输入操作的对象的概率,从而能够有指向性的对应用程序进行压力测试,使得应用程序的压力测试的调整更为灵活。
值得一提的是,上述实施例中的控件选择信息集合和坐标选择信息集合分别表示的是输入操作的对象为有效控件的概率比重以及输入操作的对象为随机生成的坐标点的概率比重;不同种类的有效控件对应控件选择信息集合的不同子集分别表示的是输入操作的对象为不同种类的有效控件的概率比重;不同种类的有效控件分别对应的不同的控件种类指示信息集合分别表示的是输入操作的对象为不同种类的有效控件的概率比重。
由于不同的操作对象需要使用不同类型的输入操作,因此在上述实施例中的步骤102之后,还可以增添步骤105,图6为本发明实施例提供的应用程序的压力测试方法的流程图之六,如图6所示,步骤105的具体内容如下:
步骤105,确定将对有效控件之一或随机生成的坐标点进行的输入操作的类型。
其中,对不同的有效控件或随机生成的坐标点进行的输入操作也不同,输入操作的类型包括但并不限于单击操作、双击操作、滑动操作等等。比如,确定的输入操作的有效控件为解锁滑动块,则确定输入操作的类型为滑动操作。又比如,确定的输入操作的有效控件为“下一页”按钮,则确定输入操作的类型为单击操作。同理,输入操作的对象为随机生成的坐标点时,也可以根据坐标点位于应用程序的界面的哪个功能区域,来确定输入操作的类型。
通过根据输入操作的对象来判断输入操作的类型,能够有效的避免输入操作的类型与输入操作的对象的不匹配造成的无效输入操作,从而进一步提高对应用程序进行压力测试的效率。
请参考图7,在进行压力测试的过程中,有些输入操作会导致应用程序的中止,比如,点击超链接后跳转到网页等操作,应用程序的中止也会导致压力测试的中止。为了保证压力测试能够完成,得到完整的压力测试数据,上述实施例中的应用程序的压力测试方法还可以增添步骤106,图7为本发明实施例提供的应用程序的压力测试方法的流程图之七,如图7所示,步骤106的具体内容如下:
步骤106,当应用程序运行中止运行且压力测试的时长尚未达到期望的测试时长时,重新启动压力测试。
其中,期望的测试时长为压力测试不间断执行直至完成的时长,当应用程序发生意外,比如应用程序崩溃等,导致应用程序中止运行时,若此时压力测试的时长已达到期望的测试时长,那么表示压力测试已经完成,不需要重新启动压力测试;若此时压力测试的时长未达到期望的测试时长,则表示压力测试并未完成,需要重新启动压力测试。具体的,由于应用程序本身无法重新启动压力测试,因此可以调用第三方库中的重启动命令,来重新启动针对应用程序的压力测试,直至一次压力测试的时长达到期望的测试时长。比如,在iOS系统中可以调用苹果(apple)的第三方库中的libimobiledeviced的idevicedebug来进行压力测试的重启动。
需要说明的是,图7所示的只是步骤106与步骤101-步骤104之间的一种时序关系的方法流程图,在本发明实施例中并不限定步骤106与上述实施例中的步骤101-步骤105中的任意一个步骤的时序关系,也不限定步骤106与步骤101-步骤105中的任意一个步骤的细化步骤之间的时序关系,步骤106执行的条件已经在步骤106中说明,在此不再赘述。
本实施例能够在压力测试还未结束,跳出应用程序或应用程序发生意外结束时,重新启动压力测试,从而获得完整的压力测试数据,保证了应用程序的压力测试的稳定性。
请参阅图8,图8为本发明实施例提供的一种应用程序的压力测试装置的结构示意图之一,如图7所示的这种应用程序的压力测试装置200包括:
集合设置单元201,被配置为设置应用程序的控件选择信息集合和坐标选择信息集合。其中,控件选择信息集合由表征选择应用程序的有效控件作为输入操作的对象的控件选择信息组成,坐标选择信息集合由表征选择随机生成的坐标点作为输入操作的对象的坐标选择信息组成,有效控件为能够接收输入操作并给出反馈的控件。
对象确定单元202,被配置为根据随机生成的操作对象选择信息属于控件选择信息集合还是坐标选择信息集合,确定输入操作的对象为有效控件还是随机生成的坐标点。
第一操作单元203,被配置为在所述对象确定单元202当确定输入操作的对象为有效控件时,对有效控件之一进行输入操作。
第二操作单元204,被配置为在所述对象确定单元202当确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。
本发明提供的一种应用程序的压力测试装置,根据设置的应用程序中表征选择有效控件作为输入操作的对象的控件选择信息集合,以及选择随机生成的坐标点作为输入操作的对象的坐标选择信息集合,确定输入操作的对象,当确定输入操作的对象为有效控件时,对有效控件之一进行输入操作,当确定输入操作的对象为随机生成的坐标点时,对随机生成的坐标点进行输入操作。由于有效控件在接收输入操作后能够给出反馈,使得输入操作有效,而压力测试中既有可能对有效控件进行输入操作,也有可能对随机生成的坐标点进行输入操作,加入了对有效控件进行输入操作的可能性,降低了对随机生成的坐标点进行输入操作的可能性,降低了无效输入操作出现的概率,从而提高了应用程序的压力测试的效率。
进一步的,上述实施例中的集合设置单元201还被配置为设置初始坐标选择信息集合;以及被配置为根据有效控件的种类数目,向初始坐标选择信息集合添加新的坐标选择信息,从而形成坐标选择信息集合,其中,新的坐标选择信息的条数与有效控件的种类数目成比例。
当应用程序中有效控件的种类数目至少有两种时,上述实施例中的第一操作单元203还可以被配置为确定操作对象选择信息所属的子集,并对操作对象选择信息所属的子集对应的有效控件之一进行输入操作。需要说明的是,每个种类的有效控件对应控件选择信息集合的一个子集。
当应用程序中有效控件的种类至少有两种时,上述实施例中的第一操作单元203还可以被配置为随机生成控件种类选择信息,并对控件种类选择信息所属的控件种类指示信息集合对应的有效控件之一进行输入操作。需要注意的是,每个种类的有效控件对应一个控件种类指示信息集合。
为了防止在获取控件时出现意外导致的本次压力测试失效,述实施例中的应用程序的压力测试装置200还包括判断模块205和第三操作单元206。图9为本发明实施例提供的应用程序的压力测试装置的结构示意图之二,如图9所示,判断模块205被配置为判断是否存在控件种类选择信息所属的控件种类指示信息集合。第三操作单元206被配置为若不存在控件种类选择信息所属的控件种类指示信息集合,对随机生成的坐标点进行输入操作。
为了进一步提高对应用程序进行压力测试的效率,上述实施例中的应用程序的压力测试装置200还包括类型确定单元207,图10为本发明实施例提供的应用程序的压力测试装置的结构示意图之三,如图10所示的类型确定单元207被配置为确定将对所述有效控件之一或所述随机生成的坐标点进行的输入操作的类型。
为了保证应用程序的压力测试的稳定性,应用程序的压力测试装置200还包括测试重启单元208,图11为本发明实施例提供的应用程序的压力测试装置的结构示意图之四,如图11所示的测试重启单元208被配置为当所述应用程序中止运行且压力测试的时长尚未达到期望的测试时长时,重新启动压力测试。需要注意的是,图11所示的只是一种测试重启单元208与其他单元的连接方式,其他能够实现的连接方式也属于本实施例的保护范围。
以上所述的结构示意图中所示的功能单元和功能模块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
需要明确的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。本发明并不局限于上文所描述并在图中示出的特定步骤和结构。并且,为了简明起见,这里省略对已知方法技术的详细描述。
此外,说明书中所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在上面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有所述特定细节中的一个或更多,或者可以采用其它的方法、单元、模块等。在其它情况下,不详细示出或描述公知结构或者操作以避免模糊本发明的主要技术创意。
Claims (12)
1.一种应用程序的压力测试方法,包括:
设置所述应用程序的控件选择信息集合和坐标选择信息集合,所述控件选择信息集合由表征选择所述应用程序的有效控件作为输入操作的对象的控件选择信息组成,所述坐标选择信息集合由表征选择随机生成的坐标点作为所述输入操作的对象的坐标选择信息组成,所述有效控件为能够接收输入操作并给出反馈的控件;
根据随机生成的操作对象选择信息属于所述控件选择信息集合还是所述坐标选择信息集合,确定所述输入操作的对象为所述有效控件还是所述随机生成的坐标点;
当确定所述输入操作的对象为所述有效控件时,对所述有效控件之一进行输入操作;
当确定所述输入操作的对象为所述随机生成的坐标点时,对所述随机生成的坐标点进行输入操作;
其中,设置所述坐标选择信息集合的处理包括:
设置初始坐标选择信息集合;
根据所述有效控件的种类数目,向所述初始坐标选择信息集合添加新的坐标选择信息,从而形成所述坐标选择信息集合,其中,所述新的坐标选择信息的条数与所述有效控件的种类数目成比例。
2.根据权利要求1所述的压力测试方法,其中,所述有效控件的种类数目至少为两种,每个种类的有效控件对应所述控件选择信息集合的一个子集,
当确定所述输入操作的对象为所述有效控件时,对所述有效控件之一进行输入操作的处理包括:确定所述操作对象选择信息所属的子集,并对所述操作对象选择信息所属的子集对应的有效控件之一进行输入操作。
3.根据权利要求1所述的压力测试方法,其中,所述有效控件的种类数目至少为两种,每个种类的有效控件对应一个预设的控件种类指示信息集合,
当确定所述输入操作的对象为所述有效控件时,对所述有效控件之一进行输入操作的处理包括:随机生成控件种类选择信息,并对所述控件种类选择信息所属的控件种类指示信息集合对应的有效控件之一进行输入操作。
4.根据权利要求1-3中任意一项所述的压力测试方法,还包括:
确定将对所述有效控件之一或所述随机生成的坐标点进行的输入操作的类型。
5.根据权利要求3所述的压力测试方法,在随机生成控件种类选择信息之后,还包括:
判断是否存在所述控件种类选择信息所属的控件种类指示信息集合;
若不存在所述控件种类选择信息所属的控件种类指示信息集合,对所述随机生成的坐标点进行输入操作。
6.根据权利要求1所述的压力测试方法,还包括:
当所述应用程序中止运行且压力测试的时长尚未达到期望的测试时长时,重新启动压力测试。
7.一种应用程序的压力测试装置,包括:
集合设置单元,被配置为设置所述应用程序的控件选择信息集合和坐标选择信息集合,所述控件选择信息集合由表征选择所述应用程序的有效控件作为输入操作的对象的控件选择信息组成,所述坐标选择信息集合由表征选择随机生成的坐标点作为所述输入操作的对象的坐标选择信息组成,所述有效控件为能够接收输入操作并给出反馈的控件;
对象确定单元,被配置为根据随机生成的操作对象选择信息属于所述控件选择信息集合还是所述坐标选择信息集合,确定所述输入操作的对象为所述有效控件还是所述随机生成的坐标点;
第一操作单元,被配置为在所述对象确定单元确定所述输入操作的对象为所述有效控件时,对所述有效控件之一进行输入操作;
第二操作单元,被配置为在所述对象确定单元确定所述输入操作的对象为所述随机生成的坐标点时,对所述随机生成的坐标点进行输入操作;
其中,所述集合设置单元还被配置为:
设置初始坐标选择信息集合;
根据所述有效控件的种类数目,向所述初始坐标选择信息集合添加新的坐标选择信息,从而形成所述坐标选择信息集合,其中,所述新的坐标选择信息的条数与所述有效控件的种类数目成比例。
8.根据权利要求7所述的压力测试装置,其中,所述有效控件的种类数目至少为两种,每个种类的有效控件对应所述控件选择信息集合的一个子集,
所述第一操作单元还被配置为确定所述操作对象选择信息所属的子集,并对所述操作对象选择信息所属的子集对应的有效控件之一进行输入操作。
9.根据权利要求7所述的压力测试装置,其中,所述有效控件的种类数目至少为两种,每个种类的有效控件对应一个预设的控件种类指示信息集合,
所述第一操作单元还被配置为:
随机生成控件种类选择信息,并对所述控件种类选择信息所属的控件种类指示信息集合对应的有效控件之一进行输入操作。
10.根据权利要求7-9中任意一项所述的压力测试装置,还包括:
类型确定单元,被配置为确定将对所述有效控件之一或所述随机生成的坐标点进行的输入操作的类型。
11.根据权利要求9所述的压力测试装置,还包括:
判断模块,被配置为判断是否存在所述控件种类选择信息所属的控件种类指示信息集合;
第三操作单元,被配置为若不存在所述控件种类选择信息所属的控件种类指示信息集合,对所述随机生成的坐标点进行输入操作。
12.根据权利要求7所述的压力测试装置,还包括:
测试重启单元,被配置为当所述应用程序中止运行且压力测试的时长尚未达到期望的测试时长时,重新启动压力测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610956824.5A CN106569938B (zh) | 2016-10-27 | 2016-10-27 | 应用程序的压力测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610956824.5A CN106569938B (zh) | 2016-10-27 | 2016-10-27 | 应用程序的压力测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106569938A CN106569938A (zh) | 2017-04-19 |
CN106569938B true CN106569938B (zh) | 2019-07-05 |
Family
ID=58535648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610956824.5A Active CN106569938B (zh) | 2016-10-27 | 2016-10-27 | 应用程序的压力测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106569938B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111274152B (zh) * | 2020-02-14 | 2022-05-31 | 厦门美图之家科技有限公司 | 应用程序测试方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019923A (zh) * | 2011-09-22 | 2013-04-03 | 腾讯科技(深圳)有限公司 | 模拟点击测试的方法及系统 |
CN103678094A (zh) * | 2012-08-31 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 随机按键测试方法和装置 |
CN105512023A (zh) * | 2014-09-26 | 2016-04-20 | 腾讯科技(深圳)有限公司 | 一种Monkey测试方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9311222B1 (en) * | 2013-11-27 | 2016-04-12 | Ca, Inc. | User interface testing abstraction |
-
2016
- 2016-10-27 CN CN201610956824.5A patent/CN106569938B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019923A (zh) * | 2011-09-22 | 2013-04-03 | 腾讯科技(深圳)有限公司 | 模拟点击测试的方法及系统 |
CN103678094A (zh) * | 2012-08-31 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 随机按键测试方法和装置 |
CN105512023A (zh) * | 2014-09-26 | 2016-04-20 | 腾讯科技(深圳)有限公司 | 一种Monkey测试方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106569938A (zh) | 2017-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2990940B1 (en) | Icon display method and apparatus | |
CN102934068B (zh) | 用于联合多个设备的显示器的方法、装置和计算机程序产品 | |
CN105320572B (zh) | 浏览器异常处理方法、装置及系统 | |
CN109460279A (zh) | 基于小程序的表单页面开发方法、装置、设备及存储介质 | |
CN103984626B (zh) | 一种生成测试用例脚本的方法及装置 | |
CN107250952A (zh) | 用于处理触摸接触的强度的设备、方法和用户界面 | |
CN106844067A (zh) | 一种内容的处理方法及移动终端 | |
CN102981627A (zh) | 一种密码输入方法及设备 | |
CN105335633B (zh) | 一种移动终端防偷窥方法及移动终端 | |
CN103329108A (zh) | 测试装置 | |
CN107071556A (zh) | 一种界面渲染方法和装置 | |
CN105988931B (zh) | 测试方法及装置 | |
CN104133765B (zh) | 网络活动的测试用例发送方法及测试用例服务器 | |
CN106663015A (zh) | 恢复会话状态 | |
CN106775193A (zh) | 一种应用程序界面显示方法及装置 | |
CN107704613A (zh) | 一种信息管理方法、终端及计算机可读存储介质 | |
WO2007095505A2 (en) | Method and apparatus for displaying notifications | |
CN105739771B (zh) | 一种显示界面管理方法、装置及终端 | |
CN106569938B (zh) | 应用程序的压力测试方法和装置 | |
CN106170790A (zh) | 服务图库用户界面呈现 | |
CN106250020A (zh) | 一种字体的输入和显示方法及移动终端 | |
CN105653131B (zh) | 一种查找应用程序的方法及终端 | |
CN106227413A (zh) | 一种基于移动终端的应用启动检测方法及系统 | |
CN111459823A (zh) | 游戏软件的测试方法和装置、存储介质、处理器 | |
CN109492249A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |