一种应用测试方法和装置的制造方法

文档序号:9261301阅读:354来源:国知局
一种应用测试方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,尤其涉及一种应用测试方法和装置。
【背景技术】
[0002]随着电子终端新技术的不断涌现,基于业务应用层面开发和测试比重的增加,复杂度的不断提高以及基于电子终端的应用服务的快速融合,使得电子终端上运行的应用程序也越来越多,针对电子终端上的应用程序测试的需求也应运而生。现有技术中存在多种可以自动对电子终端上的应用程序进行测试的方式,例如较为常用的Android操作系统自带的Monkey测试工具,用户可以通过将手机连接到电脑,通过电脑启动Monkey测试。测试启动后,Monkey通过向系统发送伪随机的事件流,模拟用户的按键输入,触摸屏输入,手势输入等,实现对正在运行的应用程序进行压力测试,看设备多长时间会出现异常,观察终端以及应用程序的稳定性和容错性能。
[0003]现有应用程序的测试方式的缺陷在于:不支持应用程序的自动登录,即对于一些需要登录的应用程序,如即时通讯工具、SNS (Social Networking Services,即社会性网络服务)客户端等,仍以使用Android操作系统自带的Monkey测试工具进行测试为例,由于无法实现应用程序自动登录,Monkey就会不断地在登录界面无意义地点来点去而无法实现自动登录,无法真正的模拟到用户的正常操作,进而也无法得到终端以及应用程序性能的准确测试结果。

【发明内容】

[0004]有鉴于此,本发明实施例提供一种应用测试方法和装置,可针对需要登录的应用程序进行自动测试。
[0005]为了解决上述技术问题,本发明实施例提供了一种应用测试方法,所述方法包括:
[0006]启动被测应用程序;
[0007]查询当前显示界面中的所有控件信息,以获取所述被测应用程序的登录控件信息;
[0008]根据被测应用程序的登录控件信息执行预设的应用登录脚本;
[0009]执行针对所述被测应用程序的模拟输入测试。
[0010]相应地,本发明实施例还提供了一种应用测试装置,所述应用测试装置包括:
[0011]程序启动模块,用以启动被测应用程序;
[0012]控件信息获取模块,用以查询当前显示界面中的所有控件信息,以获取所述被测应用程序的登录控件信息;
[0013]应用登录模块,用以根据被测应用程序的登录控件信息执行预设的应用登录脚本;
[0014]输入测试模块,用以执行针对所述被测应用程序的模拟输入测试。
[0015]通过实施本发明实施例,可以通过自动识别被测应用程序的登录控件信息,实现完成被测应用程序的登录操作,从而可以在被测应用程序成功登录后对应用程序进行模拟输入测试,克服了现有技术中不能对需要登录的应用程序进行模拟输入测试的问题。
【附图说明】
[0016]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017]图1是本发明实施例中的一种应用测试方法的流程示意图;
[0018]图2是本发明应用测试方法的实施例中获取被测应用程序的登录控件信息的流程不意图;
[0019]图3是本发明应用测试方法的实施例中根据被测应用程序的登录控件信息执行预设的应用登录脚本的流程示意图;
[0020]图4是本发明实施例中的一种应用测试装置的结构示意图;
[0021]图5是本发明应用测试装置的实施例中控件信息获取模块的结构示意图。
【具体实施方式】
[0022]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023]图1是本发明实施例中的一种应用测试方法的流程示意图,本发明提及的应用测试方法可以适用于对电子终端中的应用程序进行测试,该流程可以在应用程序所在终端实施,也可以由与应用程序所在终端建立连接的另一终端实施,如图所示本发明实施例中的应用测试方法至少可以包括以下流程:
[0024]S101,启动被测应用程序。
[0025]本发明实施例中的被测应用程序可以为需要登录至服务器后方能够正常使用的应用程序,例如即时通讯工具、SNS客户端、网络相册客户端等。本发明实施例中的应用测试方法可以通过运行经过自定义的自动化测试工具实施,所述自动化测试工具可以例如在Android系统中运行的Monkey测试工具,例如可以向电子终端发送一串adb shell命令,如monkey - p com.tencent.mm - vlOO,则可以在电子终端启动Monkey测试,并通过monkey启动微信客户端。
[0026]S102,查询当前显示界面中的所有控件信息,以获取所述被测应用程序的登录控件信息。
[0027]以Android系统的电子终端为例,在启动被测应用程序后,测试工具可以通过向Android系统自带进程Viewserver发送查询指令,查询当前显示界面中的所有控件信息,从而获取所述被测应用程序的登录控件信息。具体实现中,可以在Monkey测试工具中的monkey事件队列(MonkeyEvent)中增添自定义模拟登录事件即MonkeyLoginEvent,所述模拟登录事件用以被执行本实施例中的自动登录功能,在启动被测应用程序后,可以通过执行所述模拟登录事件向Android系统自带进程Viewserver发送查询指令,查询当前显示界面中的所有控件信息,从而获取所述被测应用程序的登录控件信息。
[0028]进而在可选实施例中,测试工具可以通过向预设的界面管理对象发送登录控件查询请求,携带所述被测应用程序的登录控件标识,以使所述界面管理对象向Viewserver查询当前显示界面中的所有控件信息,所述界面管理对象根据所述被测应用程序的登录控件标识对所述当前显示界面中的所有控件信息解析得到所述被测应用程序的登录控件信息,进而获取所述界面管理对象返回的所述被测应用程序的登录控件信息。具体可以如下文结合图2所示的在一个可选实施例中实现获取被测应用程序的登录控件信息的流程。
[0029]所述被测应用程序的登录控件信息可以包括被测应用程序的至少一个登录控件的控件激活参数、控件输入方式、Π位置等信息,以便在测试过程中可以通过向被测应用程序的登录控件输入登录操作以实现被测应用程序的自动登录。所述登录控件可以包括登录标识输入控件和验证信息输入控件,在可选实施例中,被测应用程序可能需要在起始界面点击“登录”选项或按钮后方进入登录界面,则被测应用程序的至少一个登录控件还包括进入登录页面的输入控件。
[0030]S103,根据被测应用程序的登录控件信息执行预设的应用登录脚本,即自动执行应用程序的登录操作。
[0031]具体实现中,可以根据事先注册或使用的程序登录账号、密码等信息预先定制针对被测应用程序的登录脚本,在获取到被测应用程序的登录控件信息后,测试工具可以通过执行该登录脚本向应用程序的登录控件输入登录操作,例如向登录标识输入控件登录标识(用户名,登录账号等),向应用程序的验证信息(密码、口令、验证码或用户私钥等)输入控件输入登录验证信息,从而模拟执行应用程序的登录操作。具体可以如下文结合图3所示的在一个可选实施例中根据被测应用程序的登录控件信息执行预设的应用登录脚本的实现流程。
[0032]S104,执行针对所述被测应用程序的模拟输入测试。
[0033]具体的,所述模拟输入测试可以包括常规模拟用户的按键输入,触摸屏输入,手势输入等,以对正在运行的应用程序进行测试。在可选实施例中,测试工具可以通过向电子终端中运行的应用程序发送伪随机的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1