一种移动终端上应用程序的自动化测试方法及装置制造方法及图纸

技术编号:8834191 阅读:178 留言:0更新日期:2013-06-22 20:26
本发明专利技术公开了一种移动终端上应用程序的自动化测试方法及装置。根据本发明专利技术方法,首先读取记录所有待测试对象的名称的配置文件,并将所有待测试对象的名称存储至对象链表;列出所有待测试对象的名称的列表,根据用户的输入选择待测试对象中其测试会引起系统关闭或者测试过程停止的对象,并从对象列表中删除被选中的对象;启动自动化测试过程;加载对象列表中的待测试对象;对对象列表中的待测试对象进行自动化测试。采用本发明专利技术方法及装置,能有效避免因为对一些活动对象的功能测试引起的系统关闭或者测试过程停止,提高自动化测试的效率。

【技术实现步骤摘要】
一种移动终端上应用程序的自动化测试方法及装置
本专利技术涉及移动终端测试领域,尤其涉及一种应用程序的自动化测试方法及装置。
技术介绍
目前,移动互联网蓬勃发展。因为移动互联网的快速发展,移动终端上的应用程序开发也有巨大的市场。仅就安卓(Android)系统的应用程序来说,其日分发量已经突破了2000万。移动终端的用户可以在移动互联网上自由下载、安装多种多样、功能各异的应用程序,这为移动终端的用户带来了丰富的用户体验。但是,这些层出不穷的应用被开发完成后,在投放市场前一定要经过测试来验证它们的有效性、安全性等等。仅仅通过人工来测试这些应用程序的成本过高,因此就产生了应用程序的自动化测试工具。活动(Activity)对象是安卓(Android)应用程序开发中十分重要的一类对象。活动对象是能够提供用户可以操作的界面的一类应用程序组件。在安卓(Android)软件环境中,应用程序是由一组活动对象组成的,而每个活动对象不但是本应用程序的组成部分,而且也对外开放,可以向同一系统内任何一个外部应用程序提供服务。因为活动对象在安卓应用程序中的重要性,很多应用程序自动化测试工具以活动对象作为自动化测试的对象。有这样一些活动对象,在其实现过程中调用了会造成移动终端关机或者重启的函数。由于这些调用,对这些活动对象的自动化测试的过程可能因为其所引起的关机或者重启而中断。其结果是,应用程序的测试员必须手动重启自动化测试过程,并手动跳过对这些活动对象的自动化测试。这样,原本十分方便、快捷的自动化测试过程变得十分麻烦。
技术实现思路
本专利技术的目的在于提出一种移动终端上应用程序的自动化测试方法及装置,以避免在自动化测试过程中不必要的关机和重启。为达此目的,本专利技术采用以下技术方案:一种移动终端上应用程序的自动化测试方法,所述方法包括:读取记录所有待测试对象的名称的配置文件,并将所有待测试对象的名称存储至对象链表;列出所有待测试对象的名称的列表,根据用户输入选择待测试对象中其测试会引起系统关闭或者测试过程停止的对象,并从对象列表中删除被选中的对象;启动自动化测试过程;加载对象列表中的待测试对象;对对象列表中的待测试对象进行自动化测试。进一步的,所述移动终端的操作系统是安卓(Android)操作系统。进一步的,所述记录所有待测试对象的名称的配置文件是安卓清单(AndroidManifest)文件。进一步的,所述待测试对象是活动(Activity)对象。对应的,本专利技术还提供了一种移动终端上应用程序的自动化测试装置,所述装置包括:配置文件读取模块,用于读取记录所有待测试对象的名称的配置文件,并将所有待测试对象的名称存储至对象链表;测试对象选择模块,用于为用户列出所有待测试对象的名称的列表,由用户根据经验选择待测试对象中其测试会引起系统关闭或者测试过程停止的对象,用户完成选择后,从对象列表中删除被选中的对象;测试程序启动模块,用于启动自动化测试过程;待测试对象加载模块,用于加载对象列表中的待测试对象;自动化测试模块,用于对对象列表中的待测试对象进行自动化测试。进一步的,所述移动终端的操作系统是安卓(Android)操作系统。进一步的,所述记录所有待测试对象的名称的配置文件是安卓清单(AndroidManifest)文件。进一步的,所述待测试对象是活动(Activity)对象。本专利技术方法及装置的有益效果在于,采用本专利技术的方法及装置能有效的避免对一些活动对象进行自动化测试时产生的系统关闭或者测试过程停止的问题,提高测试效率;测试程序运行在个人电脑上,并通过与移动终端的数据连接控制对移动终端的测试,有利于用户按测试需求更改被测试的对象。附图说明图1是本专利技术的第一实施例提供的移动终端上应用程序的自动化测试方法的流程图。图2是本专利技术的第二实施例提供的移动终端上应用程序的自动化测试装置的结构示意图。具体实施方式下面结合附图并通过具体实施方式来进一步说明本专利技术的技术方案。图1示出了本专利技术的第一实施例。图1是本专利技术的第一实施例提供的移动终端上应用程序的自动化测试方法的流程图。在步骤S101中,读取记录所有待测试对象的名称的配置文件,并将所有待测试对象的名称存储至对象链表。在安卓(Android)操作系统下,每个应用程序要在系统中启动和运行,都必须在其根目录下有一个名称为安卓清单(AndroidManifest)的使用可扩展标记语言(XML)编写的配置文件。所述安卓清单配置文件定义了应用程序及其组件的结构和元数据。具体的,所述安卓清单配置文件包含了组成应用程序的每一个组件的节点,并使用意图过滤器(IntentFilter)和权限(Authority)来确定这些组件之间以及这些组件和其他应用程序是如何交互的。自动化测试过程开始时,从所述安卓清单配置文件中读出所有组成所述应用程序的活动对象的名称,并将所述活动对象的名称存储在对象链表中,以准备对所述活动对象的自动化测试。读取活动对象名称时,应该首先在所述安卓清单配置文件中找到所述的活动(Activity)节点,然后从所述活动节点中读取所述应用程序包括的每一个活动(Activity)对象的名称,并将读出的活动对象的名称存储在一个链表中。所述链表被用于存储要测试的应用程序中所有的活动对象的名称,为后续的自动化测试提供测试的目标。在步骤S102中,为用户列出所有待测试对象的名称的列表,根据用户输入选择待测试对象中其测试会引起系统关闭或者测试过程停止的对象,并从对象列表中删除被选中的对象。在安卓系统的应用程序中,有一些应用程序的活动对象的运行会引起系统关闭或者自动化测试过程的停止。例如,带有定时关机功能的应用程序的运行就可能导致系统关闭。对这些应用程序进行自动化测试的过程中,所述的应用程序难免运行至会引起所述问题的程序段,造成移动终端的操作系统关闭,或者所述自动化测试过程的停止。发生了这样的情况,测试人员只能手动停止自动化测试的过程,重启移动终端及所述自动化测试过程,并在所述自动化测试过程被重启后手动的跳过会引起问题的活动对象的测试。显然,这样的操作十分麻烦。因此,我们在获取应用程序的所有活动对象后,将所有的活动对象用列表的形式列出,让用户从中选择中会引起系统关闭及自动化测试过程的停止的应用程序。用户的选择过程主要依据用户对应用程序的先验知识及以往对活动对象进行测试的经验。用户完成上述选择步骤后,对自己完成的选择进行确认。确认完成后,所述自动化测试过程将用户选择的应用程序从对象列表中删除。在步骤S103中,启动自动化测试过程。完成了待测试的活动对象的准备之后,启动自动化测试过程。所述自动化测试程序根据MonkeyRunner框架编写,属于功能测试程序。所述MoneyRunner框架是安卓软件开发工具包(AndroidSDK)自带的自动化测试程序开发工具,利用MonkeyRunner可以开发出快捷、易用的移动终端功能测试程序。所述自动化测试程序运行在个人电脑上,通过与所述移动终端之间的数据连接来控制所述移动终端,对所述移动终端进行测试。所述自动化测试程序可以由预先编写好的测试脚本驱动,也可以由用户在命令行交互窗口输入命令来实时驱动。在步骤S104中,加载对象列表中的待测试对象。所述自动化测试过程启本文档来自技高网...
一种移动终端上应用程序的自动化测试方法及装置

【技术保护点】
一种移动终端上应用程序的自动化测试方法,其特征在于,所述方法包括:读取记录所有待测试对象的名称的配置文件,并将所有待测试对象的名称存储至对象链表;列出所有待测试对象的名称的列表,根据用户的输入选择待测试对象中其测试会引起系统关闭或者测试过程停止的对象,并从对象列表中删除被选中的对象;启动自动化测试过程;加载对象列表中的待测试对象;对对象列表中的待测试对象进行自动化测试。

【技术特征摘要】
1.一种移动终端上应用程序的自动化测试方法,其特征在于,所述方法包括:读取记录所有待测试对象的名称的配置文件,并将所有待测试对象的名称存储至对象链表;列出所有待测试对象的名称的列表,根据用户的输入选择待测试对象中其运行会引起系统关闭或者测试过程停止的对象,并从对象列表中删除被选中的对象;启动自动化测试过程;加载对象列表中的待测试对象;对对象列表中的待测试对象进行自动化测试;所述移动终端的操作系统是安卓(Android)操作系统;所述待测试对象是活动(Activity)对象;所述自动化测试过程根据MonkeyRunner框架编写。2.根据权利要求1所述的移动终端上应用程序的自动化测试方法,其特征在于,所述记录所有待测试对象的名称的配置文件是安卓清单(AndroidManifest)文件。3.一种移动终端上应用程序的自动化测试装置,其特征在于...

【专利技术属性】
技术研发人员:刘文杰
申请(专利权)人:广东欧珀移动通信有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1