一种应用遍历测试方法、设备和移动终端的制作方法_3

文档序号:9865411阅读:来源:国知局
控件例如是文本类(TextView、EditText等)、按钮类(Button、CheckBox等)、图片类等等。以某个页面的一个控件为例进行说明。
[0053]测试执行单元240通过指针读取页面控件列表中的一个控件,判断该控件所接受的操作类型是否为点击型、滑动型和输入型中之一。如果该控件的操作类型为点击型、滑动型和输入型中之一,则对该控件执行相应的点击、滑动或输入信息操作。在对该控件执行了相应的操作之后,测试执行单元240进一步判断该页面是否发生跳转。如果该页面发生了跳转,则对跳转后的页面进行控件遍历测试,例如,在测试美图秀秀“首页”中的控件时,该“首页”页面跳转到“美拍”页面,此时,对新的页面执行上述的控件遍历测试。如果该页面没有发生跳转,此时,判断该页面的内容是否改变。如果页面的内容发生改变,则对内容改变后的页面中的控件执行测试操作,例如,在测试美图秀秀“首页”中的控件时,出现了对话框、Fragment等控件,对出现的新的控件执行上述测试操作。如果页面的内容未发生改变,则继续执行控件遍历测试,直到测试完页面控件列表中的所有控件。
[0054]在控件遍历测试过程中,应用监听单元250可以监听当前被测应用是否出现异常。例如,通过被测应用的属性信息中的应用包名称监听当前被测应用是否为原来的被测应用。如果不是原来的被测应用,说明被测应用在测试过程中跳转到了其他应用,则直接退出其他应用,重新进入原来的被测应用,继续测试。其他应用一般包括白名单应用和桌面应用,白名单应用为与被测应用相关的应用,在测试人员选择好被测应用后,可进一步选择白名单应用,例如,选择的被测应用为美图秀秀,与美图秀秀相关的应用包括微信、微博等,测试人员可将微信和微博加入白名单,桌面应用为被测应用和白名单应用以外的所有应用。这样,可以防止测试中断,减少对测试结果的影响。
[0055]应用监听单元250还可以监听移动终端屏幕的状态,例如,在某个页面执行控件遍历测试过程中,移动终端例如手机的屏幕熄灭,导致测试执行单元240无法获取该页面的页面节点信息,此时,应用监听单元250可唤醒屏幕,防止测试异常。
[0056]整个测试过程中,屏幕录制单元260可录制被测应用在测试过程中的各测试界面。页面选取单元280选取被测应用测试出错的界面,生成测试报告,S卩log文件,以便测试人员对log文件进行摘取、整理,快速定位问题所在,为后期研发提供有效的数据。
[0057]根据本发明的技术方案,通过对被测应用中的每一个页面执行控件遍历测试,提高了测试效率,简化了测试流程。
[0058]图4示出了根据本发明一个示例性实施例的应用遍历测试方法500的流程图。如图4所示,本实施方法适于在移动终端中执行,该应用遍历测试方法始于步骤S410。
[0059]在步骤S410中,获取移动终端中多个应用的属性信息。其中,应用的属性信息一般包括应用包名称和Activity名称,上述Activity名称适于启动被测应用。
[0060]在步骤S420中,接收测试人员对被测应用的选择。
[0061]在步骤S430中,接收测试人员对被测应用测试参数的配置。其中,测试参数一般包括测试时长、最大测试循环数、用户名和密码。
[0062]在步骤S440中,启动被测应用。接下来在步骤S450中,对被测应用的各页面执行控件遍历测试,以一个页面中的控件遍历测试为例进行介绍,详细执行步骤参考图5流程图。
[0063]根据一种实施方式,在被测应用中的页面执行控件遍历测试过程中,记录测试开始时间,获取移动终端当前测试时间,判断移动终端当前测试时间与测试开始时间的差值是否小于测试时长。如果移动终端当前测试时间与测试开始时间的差值小于测试时长,则继续执行控件遍历测试。如果移动终端当前测试时间与测试时间的差值大于等于测试时长,则停止执行控件遍历测试。
[0064]根据一种实施方式,在被测应用中的页面执行控件遍历测试过程中,通过应用包名称监听当前被测应用是否为原来的被测应用。如果当前被测应用不是原来的被测应用,则退出当前被测应用,进入原来的被测应用。
[0065]在步骤S460中,录制被测应用在测试过程中的各测试界面。随后,在步骤S470中,选取被测应用出错的测试界面。
[0066]图5示出了根据本发明一个实施例的执行控件遍历测试的流程图。
[0067]如图5所示,在某个页面执行控件遍历测试,在步骤S442中,判断该页面是否卡死。
[0068]如果该页面未卡死,则在步骤S444中,获取该页面的页面名称。根据一种实施方式,在获取该页面的页面名称之前,需要判断该页面是否需要登录。如果该页面需要登录,则根据配置的测试参数中的用户名和密码登录该应用。如果该页面不需要登录,则直接执行步骤S444。
[0069]在步骤S446中,根据获取的页面名称查询页面节点信息数据库。其中,页面节点信息包括页面控件列表。
[0070]随后,在步骤S448中对该页面控件列表中的每个控件进行测试操作。
[0071 ]根据一种实施方式,在对页面中的一个控件执行测试操作时,判断该控件所接受的操作类型是否为点击型、滑动型和输入型中之一。如果该控件的操作类型为点击型、滑动型和输入型中之一,则对该控件执行相应的点击、滑动或输入信息操作。上述操作执行完之后,判断该页面是否跳转。如果该页面跳转,则对跳转后的页面执行控件遍历测试。如果该页面未跳转,则判断该页面的内容是否改变。如果该页面的内容发生改变,则对内容改变后的页面中的控件执行测试操作。如果该页面的内容未发生改变,则对该页面继续执行控件遍历测试。
[0072]根据本发明的技术方案,通过对被测应用中的每一个页面执行控件遍历测试,提高了测试效率,简化了测试流程。
[0073]在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0074]A9:根据Al或A7所述的方法,其中还包括:在执行控件遍历测试过程中,记录测试开始时间,获取移动终端当前测试时间,判断移动终端当前测试时间与测试开始时间的差值是否小于测试时长;如果移动终端当前测试时间与测试开始时间的差值小于测试时长,则继续执行控件遍历测试;如果移动终端当前测试时间与测试时间的差值大于等于测试时长,则停止执行控件遍历测试。
[0075]Bll:根据BlO所述的设备,其中所述属性信息包括应用包名称和Activity名称。B12:根据B11所述的设备,其中所述Ac t i V i ty名称适于启动被测应用。B13:根据B1所述的设备,其中所述测试执行单元还适于:判断所述页面是否需要登录;如果所述页面需要登录,则根据配置的测试参数登录该应用。B14:根据BlO所述的设备,其中所述测试执行单元还适于:判断该控件所接受的操作类型是否为点击型、滑动型和输入型中之一;如果该控件的操作类型为点击型、滑动型和输入型中之一,则对该控件执行相应的点击、滑动或输入信息操作。B15:根据BlO所述的设备,其中所述测试执行单元还适于:在对所述被测应用的页面的一个控件执行测试操作后,判断该页面是否跳转;如果所述页面跳转,则对跳转后的页面执行控件遍历测试;如果所述页面未跳转,则判断所述页面的内容是否改变;如果所述页面的内容发生改变,则对内容改变后的页面中的控件执行测试操作;如果所述页面的内容未发生改变,则对该页面继续执行控件遍历测试。B16:根据BlO或Bll中所述的设备,还包括:应用监听单元,适于在执行控件遍历测试过程中,通过应用包名称监听当前被测应用是否是原来的被测应用,如果不是原来的被测应用,则退出当前的被测应用,进入原
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1