一种应用测试方法和系统的制作方法
【专利摘要】本发明涉及一种应用测试方法和系统,应用测试方法包括:对待测应用程序进行解析,得到所述待测应用程序的多个应用控件;根据所述多个应用控件生成测试用例;根据所述测试用例分别对基准终端和测试终端进行测试;对所述基准终端输出的测试结果和测试终端输出的测试结果进行比对,得到比对误差;当所述比对误差小于第一阈值时,确定所述待测应用程序通过所述测试。因此,本发明实施例提供的应用测试方法,采用控件进行应用适配性测试,能够保证每个控件都能被覆盖,提高测试覆盖率,且能够节省大量的人力和物力,提高测试效率。
【专利说明】_种应用测试方法和系统
【技术领域】
[0001]本发明涉及应用适配性测试领域,尤其涉及一种应用测试方法和系统。
【背景技术】
[0002]随着电子信息技术和互联网技术的的蓬勃发展,终端设备不断增加,基于终端设备的基础上,海量的软件应运而生,不同的应用软件实现不同的功能,通过各种软件丰富了用户的生活,给人们的生活带来了巨大的改变。然而,不同的终端设备在内存、操作系统、屏幕尺寸等软件和硬件方面也都千差万别,并且这些终端设备也都在各自不断的升级更新。比如苹果手机,每年都会推出自己新的产品,新的产品在软件和硬件方面都有新的提升和改善;安卓系统的智能终端,由于安卓的开源性,使得安卓系统在短短的时间内已经升级了无数版本。但是,同一款软件面对不同的终端设备,其适配性也是不同的,因此,软件对不同终端的适配性测试必不可少。常见传统的适配性测试方法有两种:(1)人工进行测试;(2)只是对应用进行适配性测试,并未给出适配性测试结果。
[0003]而上述适配性测试方法存在以下缺点:人工测试会浪费大量的人力和物力,且不能精确得到测试结果;只进行应用适配性测试得不到适配性测试结果的测试仍然需要浪费大量的人力。
【发明内容】
[0004]本发明提供的一种应用的测试方法和系统,用以提高应用适配性测试的效率。
[0005]第一方面,本发明提供了一种应用测试方法,所述应用测试方法包括:
[0006]对待测应用程序进行解析,得到所述待测应用程序的多个应用控件;
[0007]根据所述多个应用控件生成测试用例;
[0008]根据所述测试用例分别对基准终端和测试终端进行测试;
[0009]对所述基准终端输出的测试结果和测试终端输出的测试结果进行比对,得到比对误差;
[0010]当所述比对误差小于第一阈值时,确定所述待测应用程序通过所述测试。
[0011]优选地,所述根据所述多个应用控件生成测试用例具体为:
[0012]根据所述多个应用控件的类型、数量以及所述多个应用控件之间的关系,通过所述基准终端生成所述测试用例。
[0013]优选地,所述测试终端为一个或多个。
[0014]优选地,所述根据所述测试用例分别对基准终端和测试终端分别进行测试具体为:
[0015]依次根据所述测试用例中的每一个应用控件,对所述基准终端和测试终端分别进行测试;
[0016]在每个应用控件测试结束后,所述基准终端和测试终端分别输出测试结果项。
[0017]优选地,所述对所述基准终端输出的测试结果和测试终端输出的测试结果进行比对,得到比对误差具体为:
[0018]对所述基准终端和所述测试终端依次输出的每一所述应用控件的结果项进行比对;
[0019]对所述基准终端和测试终端输出的全部测试结果项的比对结果进行统计,得到所述对比误差。
[0020]第二方面,本发明提供一种应用测试系统,所述应用测试系统包括:测试控制模块、测试用例模块、测试执行模块、结果处理模块;
[0021]所述测试控制模块,用于对待测应用程序进行解析,得到所述待测应用程序的多个应用控件;
[0022]所述测试用例模块,用于根据所述多个应用控件生成测试用例;
[0023]所述测试执行模块,用于根据所述测试用例分别对基准终端和测试终端进行测试;
[0024]所述结果处理模块,用于对所述基准终端输出的测试结果和测试终端输出的测试结果进行比较,得到匹配误差;
[0025]所述测试处理模块还用于,当所述匹配误差小于第一阈值时,确定所述待测应用程序通过所述测试。
[0026]优选地,所述测试用例模块具体用于,根据所述多个应用控件的类型、数量以及所述多个控件之间的关系,通过所述基准终端生成所述测试用例。
[0027]优选地,所述测试执行模块具体用于,
[0028]依次根据所述测试用例中的每一个应用控件,对所述基准终端和测试终端分别进行测试;
[0029]在每个应用控件测试结束后,所述基准终端和测试终端分别输出测试结果项。
[0030]优选地,所述结果处理模块具体用于,
[0031]对所述基准终端和所述测试终端依次输出的每一所述应用控件的结果项进行比对;
[0032]对所述基准终端和测试终端输出的全部测试结果项的比对结果进行统计,得到所述匹配误差。
[0033]因此,本发明提供的一种应用的测试方法和系统,通过在所需的多个终端中选择基准终端为例,在基准终端上进行适配性测试,生成测试用例,根据测试用例,通过应用控件在多个测试终端上上进行适配性测试,并将多个测试终端的测试结果与基准测试终端的测试结果进行比对,得到适配性测试结果。能够节省大量的人力和物力,提高测试效率。此夕卜,采用控件进行应用适配性测试,能够保证每个控件都能被覆盖,提高测试覆盖率。
【专利附图】
【附图说明】
[0034]图1为本发明实施例一提供的一种应用测试系统的示意图;
[0035]图2为本发明实施例二提供的一种应用测试方法的流程图;
[0036]图3为本发明实施例三提供的一种应用测试系统的网络拓扑示意图。
【具体实施方式】
[0037]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0038]为便于对本发明申请的理解,下面结合附图以具体实施例做进一步的解释和说明。
[0039]图1为本发明实施例二提供的一种应用测试系统的示意图。
[0040]如图1所示,本发明实施例提供的一种应用的测试系统包括测试控制模块101、测试用例模块102、测试执行模块103和结果处理模块104。
[0041]测试控制模块101,用于对待测应用程序进行解析,得到待测应用程序的多个应用控件。
[0042]测试用例模块102,用于根据所述多个应用控件生成测试用例。
[0043]优选地,测试用例模块102具体用于,根据多个应用控件的类型、数量以及多个控件之间的关系,通过基准终端生成所述测试用例。
[0044]测试执行模块103,用于根据所述测试用例分别对基准终端和测试终端进行测试。
[0045]其中,测试执行模块具体用于,依次根据测试用例中的每一个应用控件,对基准终端和测试终端分别进行测试。
[0046]在每个应用控件测试结束后,基准终端和测试终端分别输出测试结果项。
[0047]所述结果处理模块104,用于对基准终端输出的测试结果和测试终端输出的测试结果进行比较,得到匹配误差。
[0048]具体地,结果处理模块具体用于,对基准终端和所述测试终端依次输出的每一应用控件的结果项进行比对。
[0049]对基准终端和测试终端输出的全部测试结果项的比对结果进行统计,得到匹配误差。
[0050]所述测试处理模块104还用于,当所述匹配误差小于第一阈值时,确定待测应用程序通过测试。
[0051]因此,本发明实施例提供的一种应用测试系统,通过测试控制模块对待测应用程序的解析,以使测试用例模块生成测试用例,测试执行模块根据测试用例对基准终端和测试终端进行测试,得到测试结果,能够节省大量的人力和物力,提高测试效率。
[0052]图2为本发明实施例二提供的一种应用测试方法的流程图。
[0053]如图2所示,一种应用测试方法包括如下步骤:
[0054]步骤201,对待测应用程序进行解析,得到所述待测应用程序的多个应用控件。
[0055]具体地,对接收到的待测应用程序进行反编译,得到待测应用程序的源码,并根据源码得到待测应用程序中的多个应用控件,其中应用控件可以具体为应用程序中的应用按键,在应用程序使用过程中,方便用户的查找应用。
[0056]步骤202,根据所述多个应用控件生成测试用例。
[0057]具体地,可以根据多个应用控件的类型、数量以及所述多个应用控件之间的关系,通过基准终端生成所述测试用例。
[0058]在步骤202之前,为了测试待应用程序可以应用在不同终端上的适配性测试,先选择待测应用程序需要的适配性的多个终端,其中,终端可以包括多种不同机型的手机,基准终端可以具体为从多种不同机型的手机中选择的任一机型的手机。
[0059]依基准终端为测试例,根据多种应用控件得到测试用例,节约测试用例生成的时间以及资源上的耗费。
[0060]步骤203,根据所述测试用例分别对基准终端和测试终端进行测试。
[0061]具体地,测试终端可以为一个或者多个终端。
[0062]将通过基准终端生成的测试用例,分别用以基准终端和测试终端上进行应用程序的测试,以满足应用程序的适配性测试。
[0063]步骤204,对所述基准终端输出的测试结果和测试终端输出的测试结果进行比对,得到比对误差。
[0064]具体地,根据测试用例,依次对基准终端和测试终端应用程序中的每一个应用控件对进行测试,当基准终端与测试终端的一个应用控件测试结束,另个一个应用控件开始测试时,基准终端输出该应用控件的测试结果项,测试终端输出该项应用控件测试结果项,并对输出的两个测试结果项进行比对。对所述基准终端和测试终端依次输出的每一应用控件的结果项进行比对;并对基准终端和测试终端输出的全部测试结果项的比对结果进行统计,得到对比误差。
[0065]步骤205,当所述比对误差小于第一阈值时,确定所述待测应用程序通过所述测试。
[0066]具体地,预设第一阈值,当比对误差小于预设的第一阈值时,可以确定待测应用程序适配与基准终端和测试终端。
[0067]优选地,第一阈值可以设定为10%。
[0068]本发明实施例提供的应用测试方法,还包括:当比对误差大于第一阈值值,确定待测应用程序不通过测试,即可以确定待测应用程序不适用于测试终端。
[0069]在一个具体实施例中,当一个应用程序中包括二十个应用控件,在对比结果中,任一测试终端的一个应用控件的测试结果与基准终端的测试结果不同,则,该比对误差为5%,该待测应用程序适用于基准终端与测试终端。
[0070]因此,本发明实施例提供的一种应用测试方法,通过待测应用程序,在所需要的多个终端中选择基准终端为例,在基准终端上进行适配性测试,生成测试用例,根据测试用例,通过应用控件在多个测试终端上进行适配性测试,并将多个测试终端的测试结果与基准测试终端的测试结果进行比对,得到适配性测试结果。采用控件进行应用适配性测试,能够保证每个控件都能被覆盖,提高测试覆盖率,且能够节省大量的人力和物力,提高测试效率。
[0071]图3为本发明实施例三提供的一种应用测试的网络拓扑示意图。
[0072]如图3所示,一种应用测试的网络包括实施例1提供的应用测试系统301,网络302以及终端303。
[0073]其中,应用测试系统301包括测试控制模块101、测试用例模块102、测试执行模块103和结果处理模块104。终端包括多个被测终端,在本实施例中为四个被测终端。
[0074]应用测试系统301,用于实现待测应用程序适配性测试终端的系统。
[0075]网络302,用于连接应用测试系统301与终端303。
[0076]终端303,用于根据应用测试系统通过网络302发送的测试用例,测试终端的适配性。
[0077]专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能宄竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0078]结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或【技术领域】内所公知的任意其它形式的存储介质中。
[0079]以上所述的【具体实施方式】,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的【具体实施方式】而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种应用测试方法,其特征在于,所述应用测试方法包括: 对待测应用程序进行解析,得到所述待测应用程序的多个应用控件; 根据所述多个应用控件生成测试用例; 根据所述测试用例分别对基准终端和测试终端进行测试; 对所述基准终端输出的测试结果和测试终端输出的测试结果进行比对,得到比对误差; 当所述比对误差小于第一阈值时,确定所述待测应用程序通过所述测试。
2.根据权利要求1所述的应用测试方法,其特征在于,所述根据所述多个应用控件生成测试用例具体为: 根据所述多个应用控件的类型、数量以及所述多个应用控件之间的关系,通过所述基准终端生成所述测试用例。
3.根据权利要求1所述的应用测试方法,其特征在于,所述测试终端为一个或多个。
4.根据权利要求1所述的应用测试方法,其特征在于,所述根据所述测试用例分别对基准终端和测试终端分别进行测试具体为: 依次根据所述测试用例中的每一个应用控件,对所述基准终端和测试终端分别进行测试; 在每个应用控件测试结束后,所述基准终端和测试终端分别输出测试结果项。
5.根据权利要求4所述的应用测试方法,其特征在于,所述对所述基准终端输出的测试结果和测试终端输出的测试结果进行比对,得到比对误差具体为: 对所述基准终端和所述测试终端依次输出的每一所述应用控件的结果项进行比对; 对所述基准终端和测试终端输出的全部测试结果项的比对结果进行统计,得到所述对比误差。
6.一种应用测试系统,其特征在于,所述应用测试系统包括:测试控制模块、测试用例模块、测试执行模块、结果处理模块; 所述测试控制模块,用于对待测应用程序进行解析,得到所述待测应用程序的多个应用控件; 所述测试用例模块,用于根据所述多个应用控件生成测试用例; 所述测试执行模块,用于根据所述测试用例分别对基准终端和测试终端进行测试;所述结果处理模块,用于对所述基准终端输出的测试结果和测试终端输出的测试结果进行比较,得到匹配误差; 所述测试处理模块还用于,当所述匹配误差小于第一阈值时,确定所述待测应用程序通过所述测试。
7.根据权利要求6所述的应用测试系统,其特征在于,所述测试用例模块具体用于,根据所述多个应用控件的类型、数量以及所述多个控件之间的关系,通过所述基准终端生成所述测试用例。
8.根据权利要求6所述的应用测试系统,其特征在于,所述测试执行模块具体用于, 依次根据所述测试用例中的每一个应用控件,对所述基准终端和测试终端分别进行测试; 在每个应用控件测试结束后,所述基准终端和测试终端分别输出测试结果项。
9.根据权利要求8所述的应用测试系统,其特征在于,所述结果处理模块具体用于, 对所述基准终端和所述测试终端依次输出的每一所述应用控件的结果项进行比对; 对所述基准终端和测试终端输出的全部测试结果项的比对结果进行统计,得到所述匹配误差。
【文档编号】G06F11/36GK104461888SQ201410766137
【公开日】2015年3月25日 申请日期:2014年12月11日 优先权日:2014年12月11日
【发明者】冯丽如, 田野 申请人:中国科学院声学研究所