应用程序测试方法和装置的制造方法

文档序号:8472886阅读:258来源:国知局
应用程序测试方法和装置的制造方法
【技术领域】
[0001]本发明涉及测试领域,具体而言,涉及一种应用程序测试方法和装置。
【背景技术】
[0002]在应用程序投放市场之前,往往需要对应用程序进行稳定性测试,以保证在应用程序投入市场之后在各种终纟而和系统(例如Windows phone8)中稳定运彳丁,避免出现程序错误。
[0003]现有技术中,通常随机模拟触发应用程序的使用过程,并对随机触发到的功能进行测试,但是,由于测试过程中的随机性导致无法对应用程序中的所有功能进行全面覆盖,使得应用程序的某些功能无法被测试到,从而导致测试结果不准确。
[0004]针对现有技术中对应用程序进行测试的准确性比较低的问题,目前尚未提出有效的解决方案。

【发明内容】

[0005]本发明实施例的主要目的在于提供一种应用程序测试方法和装置,以解决现有技术中现有技术中对应用程序进行测试的准确性比较低的问题。
[0006]为了实现上述目的,根据本发明实施例的一个方面,提供了一种应用程序测试方法。该方法包括:确定待测试应用程序的测试类型;获取与待测试应用程序的测试类型相应的测试用例;获取测试用例的工作流程;以及按照测试用例的工作流程对测试用例执行测试。
[0007]为了实现上述目的,根据本发明实施例的另一方面,提供了一种应用程序测试装置。该装置包括:第一确定单元,用于确定待测试应用程序的测试类型;第一获取单元,用于获取与待测试应用程序的测试类型相应的测试用例;第二获取单元,用于获取测试用例的工作流程;以及执行单元,用于按照测试用例的工作流程对测试用例执行测试。
[0008]通过本发明实施例,采用确定待测试应用程序的测试类型;获取与待测试应用程序的测试类型相应的测试用例;获取测试用例的工作流程;以及按照测试用例的工作流程对测试用例执行测试的方法,通过获取测试用例的工作流程,按照测试用例的工作流程进行测试,由于获取了测试用例的工作流程,并按照工作流程执行测试,按照测试用例的工作流程执行测试覆盖性更好,从而解决了现有技术中对应用程序进行测试的准确性比较低的问题,进而达到了提高应用程序测试准确性的效果。
【附图说明】
[0009]构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0010]图1是根据本发明实施例的应用程序测试方法的流程图;
[0011]图2是根据本发明实施例的进行第一测试类型的测试方法的流程图;
[0012]图3是根据本发明实施例的进行第二测试类型的测试方法的流程图;
[0013]图4是根据本发明实施例的进行随机测试的测试方法的流程图;
[0014]图5是根据本发明实施例的应用程序测试装置的示意图;
[0015]图6是根据本发明实施例的进行第一测试类型的测试装置的示意图;以及
[0016]图7是根据本发明实施例的进行第二测试类型的测试装置的示意图。
【具体实施方式】
[0017]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
[0018]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0019]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0020]本发明实施例提供了一种应用程序测试方法。
[0021]图1是根据本发明实施例的应用程序测试方法的流程图。如图所示,该应用程序测试方法包括如下步骤:
[0022]步骤S101,确定待测试应用程序的测试类型。
[0023]在开发出应用程序之后,通常会对开发得到的应用程序进行稳定性测试,应用程序通过稳定性测试之后,该应用程序在投入市场之后才能在不同的系统环境状态下稳定的运行。
[0024]待测试应用程序包括QQ浏览器、微信、QQ音乐等应用程序,但不限于这些应用程序,对应于与不同系统的应用程序进行稳定性测试,例如对Windows phone8系统中运行的QQ浏览器进行稳定性测试。
[0025]测试类型包括专项测试和随机性测试等测试类型,其中,专项测试是针对一个应用程序的一个功能进行的压力测试,随机性测试是针对一个应用程序进行的覆盖性测试,随机对应用程序的各个功能进行测试,从而获得一个应用程序的整体稳定性。
[0026]以QQ浏览器为例:
[0027]在进行QQ浏览器的稳定性测试时,可以针对包括多窗口、二维码、网页访问和导航、书签等功能进行测试,如果测试类型为专项测试,则针对上述多个功能中的任意一个功能进行专项测试,如果测试类型为随机测试,则针对上述多个功能中的每个功能进行随机测试。
[0028]通过专项测试可以测试应用程序在执行某一个功能时的占用内存情况、该功能的执行时间和是否与其他应用程序有冲突的问题,通过随机测试可以模拟自然情况下使用该应用程序时的占用内存情况、执行时间以及应用程序冲突的问题,根据测试结果对应用程序进行改进和优化,从而提高应用程序的稳定性。
[0029]步骤S102,获取与待测试应用程序的测试类型相应的测试用例。
[0030]测试用例包括模拟待测试应用程序的工作流程的程序,下面以QQ浏览器为例对该步骤进行说明:
[0031 ] 对QQ浏览器进行专项测试:
[0032]进行专项测试的测试用例包括模拟QQ浏览器的使用过程,包括点击QQ浏览器图表打开浏览器、输入网址打开网页、调用菜单和调用书签等使用动作。如果对打开QQ浏览器的时间进行专项测试,可以调用该测试用例,并执行该测试用例,在模拟QQ浏览器打开浏览器的过程中,记录该打开浏览器动作的执行时间,通过反复打开QQ浏览器并记录打开QQ浏览器的时间,对记录的打开QQ浏览器的执行时间进行分析,并针对分析结果对应用程序或者测试用例进行优化。
[0033]需要说明的是,测试用例可以根据待测应用程序的功能进行调整,在对QQ浏览器进行专项测试的例子中,测试用例可以只记录触发图表打开QQ浏览器,触发关闭图表关闭QQ浏览器这个工作流程,还可以记录触发图表打开QQ浏览器,然后打开新的网页,最后关闭QQ浏览器这个工作流程,还可以是其他更复杂的工作流程。
[0034]对于记录触发图表打开QQ浏览器,然后打开新的网页,最后关闭QQ浏览器这个工作流程,除了可以对打开QQ浏览器的执行时间进行记录之外,还可以记录新网页的打开时间,并针对新网页的打开时间进行分析,并根据分析结果对应用程序或者测试用例进行优化。
[0035]从以上的说明可以看出,对于一个应用程序的一个功能进行专项测试可以利用一个进行专项测试的测试用例进行稳定性测试,对于一个进行专项测试的测试用例可以针对一个应用程序的一个或者多个功能进行稳定性测试。
[0036]对QQ浏览器进行随机测试:
[0037]进行随机测试的测试用例包括应用程序处于不同功能状态下的流程。QQ浏览器包括书签状态、历史状态和下载状态等状态,进行随机测试的测试用例包括书签状态、历史状态和下载状态等状态之间的跳转关系,例如,书签状态与历史状态之间的相互切换,历史状态与下载状态之间的相互切换,书签状态与下载状态之间的相互切换,利用该测试用例可以测试应用程序在不同功能状态下进行切换的占用内存情况、执行时间以及异常退出等非正常状态,并记录这些非正常的状态,根据记录的内容优化应用程序或者测试用例。
[0038]需要指出的是,对QQ浏览器进行随机测试的各种状态包括但不限于书签状态、历史状态和下载状态,这里只是为了举例说明,并不用于限制本发明实施例的技术方案。在下面的描述中还有对进行专项测试和随机测试的详细叙述,此处不做过多赘述。
[0039]步骤S103,获取测试用例的工作流程。
[0040]在获取与待测试应用程序的测试类型相应的测试用例之后,获取测试用例的工作流程,以按照测试用例的工作流程对测试用例进行测试。
[0041]测试用例的工作流程与应用程序的工作流程对应一致,测试用例模拟应用程序的工作流程,使得对测试用例的测试结果能够真实反映应用程序的性能,例如,应用程序出现异常或者占用内存过大。
[0042]针对一个应用程序的某个功能进行专项测试可以获取针对该专项测试的测试用例进行稳定性测试,针对多个功能进行的随机测试可以获取针对该随机测试的测试用例进行覆盖性测试。
[0043]进行专项测试的测试用例包括与专项测试对应的功能的工作流程,进行随机测得的测试用例包括与随机测试对应的多个功能之间跳转的工作流程。
[0044]步骤S104,按照测试用例的工作流程对测试用例执行测试。
[0045]每个测试用例都有其工作流程,按照其工作流程对测试用例执行测试,能够对测试用例中的所有节点进行测试,以避免出现漏测的情况。
[0046]进行专项测试的测试用例可以测试一个应用程序的某个功能的稳定性,进行随机测试的测试用例可以测试一个应用程序整体供能的稳定性,有更加广泛的覆盖性。通过专项测试可以判断一个应用程序的某个功能在运行过程中的占用内存情况、执行时间以及是否出现异常等情况,通过随机测试可以判断一个程序作为整
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1