UI随机测试方法及装置与流程

文档序号:28119739发布日期:2021-12-22 15:05阅读:95来源:国知局
UI随机测试方法及装置与流程
ui随机测试方法及装置
技术领域
1.本发明涉及计算机和人工智能技术领域,特别涉及一种ui随机测试方法及装置。


背景技术:

2.ui(user interface,用户界面)随机测试是测试应用的功能模块是否能用或是否会产生卡死等问题的重要手段。
3.目前常用的用于ui随机测试的方法有monkey(猴子)测试。monkey测试主要做随机的黑盒测试,其通过不断输入伪随机的事件流来测试应用的稳定性,但是由于monkey太过皮,太过随机,最后根本无法控制,很容易陷于一个页面无法出来,或者陷入某个无关紧要的地方无法出来,导致测试结果并不具有很好的意义。针对上述原因,目前还出现一些二次开发monkey的测试工具,例如maxim,其可以通过一些黑白名单控制,或者输入指定事件流,或者指定不同的测试随机模式,深度优先或者控件识别等,但实践过程中仍有如下不足之处:1、还是会出现陷入到一个地方出不来的情况,进入一个死循环;2、如果指定某几个activity(操作),随机的意义又不大;3、页面触发点分布不规律、触发区域小、分布在边上,页面大部分都是文本显示的情况,很难随机到所有功能。


技术实现要素:

4.本发明提供了一种ui随机测试方法及装置。本发明的技术方案如下:
5.第一方面,提供了一种ui随机测试方法,其包括:
6.当待测应用在所述被测带屏设备上运行时,对被测带屏设备的ui进行截图,并下载所述待测应用运行过程中的页面文件得到待解析文件;
7.判断所截的图片中是否包括指定图片,所述指定图片为限制操作图集或优先操作图集中的一张或多张图片;如果所截的图片中包括所述指定图片,则记录所述指定图片的界面区域范围;
8.解析所述待解析文件中的所有可操作元素,得到每个所述可操作元素的元素名称及界面坐标;
9.随机选择操作对象,其中,所述操作对象为所述优先操作图集、优先操作元素集或所述所有可操作元素中的一个对象;
10.根据随机操作动作的比例随机选择一个执行动作;
11.将所述执行动作及所述操作对象的界面坐标合成执行指令;
12.将所述执行指令发送至所述被测带屏设备,使所述被测带屏设备执行所述执行指令;
13.返回对所述被测带屏设备的ui进行截图的步骤并重复运行,直至达到运行时间。
14.所述随机选择操作对象,包括:
15.判断是否存在优先操作对象;
16.如果所述优先操作图集或所述优先操作元素集中存在至少一个对象,则确定存在
优先操作对象,并从所述优先操作图集中随机选择一张图片或从所述优先操作元素集中随机选择一个元素作为操作对象;
17.如果所述优先操作图集和所述优先操作元素集中均无对象,则确定不存在优先操作对象,并随机选择一个名称不在所述限制操作元素集中,且界面坐标也不在所述限制操作图集中任一限制操作图片的界面区域范围内的可操作元素作为操作对象。
18.可选地,在所述被测带屏设备执行所述执行指令过程中,记录所有执行动作的操作日志,其中,每条操作日志包括操作对象的名称、执行动作和界面坐标。
19.可选地,所述判断所截的图片中是否包括指定图片,包括:
20.计算所截的图片与所述限制操作图集和所述优先操作图集中的每个图片之间的相似度;
21.当所截的图片与所述限制操作图集或所述优先操作图集中的任一图片之间的相似度超过预设阈值时,确定所截的图片中包括指定图片。
22.可选地,所述待测应用在所述被测带屏设备上运行之前,还包括:
23.与被测带屏设备连接后,获取对待测应用进行测试的测试参数,所述测试参数至少包括所述被测带屏设备的标识、运行时间、限制操作图集、限制操作元素集、优先操作图集、优先操作元素集及各种随机操作动作的比例。
24.可选地,所述获取对待测应用进行测试的测试参数,包括:
25.获取从测试输入界面输入的被测带屏设备标识、运行时间、限制操作元素集、优先操作元素集及各种随机操作动作的比例;
26.根据预设测试需求从所述被测带屏设备截取一个或多个限制操作图和优先操作图,分别形成限制操作图集和优先操作图集。
27.第二方面,提供了一种ui随机测试装置,其包括:
28.截图及判断模块,配置为当待测应用在被测带屏设备上运行时,对所述被测带屏设备的ui进行截图;判断所截的图片中是否包括指定图片,所述指定图片为限制操作图集或优先操作图集中的一张或多张图片;如果所截的图片中包括所述指定图片,则记录所述指定图片的界面区域范围;
29.页面解析模块,配置为下载所述待测应用运行过程中的页面文件得到待解析文件,解析所述待解析文件中的所有可操作元素,得到每个所述可操作元素的元素名称及界面坐标;
30.操作对象筛选模块,配置为随机选择操作对象,其中,所述操作对象为所述优先操作图集、所述优先操作元素集或所述所有可操作元素中的一个对象;
31.动作配置模块,配置为根据所述随机操作动作的比例随机选择一个执行动作;
32.操作指令合成及发送模块,配置为将所述执行动作及所述操作对象的界面坐标合成执行指令,将所述执行指令发送至所述被测带屏设备,使所述被测带屏设备执行所述执行指令;返回对所述被测带屏设备的ui进行截图的步骤并重复运行,直至达到所述运行时间。
33.可选地,所述操作对象筛选模块包括:
34.判断单元,配置为判断是否存在优先操作对象;
35.第一随机选择单元,配置为如果所述优先操作图集或所述优先操作元素集中存在
至少一个对象,则确定存在优先操作对象,并从所述优先操作图集中随机选择一张图片或从所述优先操作元素集中随机选择一个元素作为操作对象;
36.第二随机选择单元,配置为如果所述优先操作图集和所述优先操作元素集中均无对象,则确定不存在优先操作对象,并随机选择一个名称不在所述限制操作元素集中,且界面坐标也不在所述限制操作图集中任一限制操作图片的界面区域范围内的可操作元素作为操作对象。
37.可选地,所述ui随机测试装置还包括日志记录模块,配置为在所述被测带屏设备执行所述执行指令过程中,记录所有执行动作的操作日志,其中,每条操作日志包括操作对象的名称、执行动作和界面坐标。
38.可选地,所述截图及判断模块还配置为:
39.计算所截的图片与所述限制操作图集和所述优先操作图集中的每个图片之间的相似度;当所截的图片与所述限制操作图集或所述优先操作图集中的任一图片之间的相似度超过预设阈值时,确定所截的图片中包括指定图片。
40.可选地,ui随机测试装置还包括界面输入模块,配置为与被测带屏设备连接后,获取对待测应用进行测试的测试参数,所述测试参数至少包括所述被测带屏设备的标识、运行时间、限制操作图集、限制操作元素集、优先操作图集、优先操作元素集及各种随机操作动作的比例。
41.可选地,所述界面输入模块包括:
42.获取单元,配置为获取从所述被测带屏设备的输入界面输入的被测带屏设备标识、运行时间、限制操作元素集、优先操作元素集及各种随机操作动作的比例;
43.截图单元,配置为根据预设测试需求从所述被测带屏设备截取一个或多个限制操作图和优先操作图,分别形成限制操作图集和优先操作图集。
44.第三方面,提供了一种ui随机测试装置,其包括:至少一个存储器和至少一个处理器;
45.所述至少一个存储器,用于存储机器可读程序;
46.所述至少一个处理器,用于调用所述机器可读程序,执行上述第一方面所述的方法。
47.第四方面,提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行上述第一方面所述的方法。
48.根据说明书实施例提供的方法和装置,通过预先设置限制操作图集、限制操作元素集、优先操作图集和优先操作元素集,并在优先操作图集、优先操作元素集或所有可操作元素中随机选择操作对象,不仅使得ui随机测试所选择的操作对象既不是容易导致测试进入死循环或进行不下去的限制操作图或限制操作元素,也不是指定的某些个元素,真正实现了操作对象的有效随机选择,而且使得所有元素在同一个页面都是地位相同,与元素本身屏幕占比无关,与布局在中心或边缘无关,被触发的机会均等,从而实现了真正意义上的随机测试。通过解析待解析文件中的所有可操作元素并随机选择操作对象,可以精准识别页面的所有可操作元素,使得所触发的测试都是对有效操作元素的测试,进而使得测试过程不会浪费在无效区域或不可触发区域,确保可以随机测试到待测应用的所有功能。
附图说明
49.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
50.图1是本发明一个实施例提供的ui随机测试方法的流程图。
51.图2是待测应用在被测带屏设备运行时所截的一个ui的示意图。
52.图3是一种ui随机测试软件的测试输入界面示意图。
53.图4是本发明实施例提供的ui随机测试方法所记录的操作日志的截图。
54.图5是现有技术的ui随机测试方法所记录的操作日志的截图。
55.图6是本发明一个实施例提供的ui随机测试方法的流程图。
56.图7是本发明一个实施例提供的ui随机测试装置的示意性框图及其与被测带屏设备的交互示意图。
57.图8是本发明一个实施例提供的ui随机测试装置的组成结构示意图。
具体实施方式
58.本发明实施例提供了一种ui随机测试方法,该方法可以通过任何具有计算、处理能力的装置、设备、平台或设备集群来执行。如图1所示,该方法可以包括以下步骤:
59.步骤101、当待测应用在被测带屏设备上运行时,对被测带屏设备的ui进行截图,并下载待测应用运行过程中的页面文件得到待解析文件。
60.该步骤的目的是将被测带屏设备的ui划分成多个可操作对象。被测带屏设备的ui由页面图片和页面文件组成。一个截图为一个可操作对象,一个元素也为一个可操作对象。
61.其中,对被测带屏设备的ui进行截图和下载待测应用运行过程中的页面文件得到待解析文件的步骤不分先后,可以先截图再下载待解析文件,也可以先下载待解析文件再截图,还可以二者同时执行。同时获取页面图像和页面文件,双管齐下精准控制整个过程。
62.步骤103、判断所截的图片中是否包括指定图片,其中,指定图片为限制操作图集或优先操作图集中的一张或多张图片;如果所截的图片中包括指定图片,则记录指定图片的界面区域范围。
63.记录指定图片的界面区域范围为其像素区域范围,即所占用的像素区域。
64.步骤105、解析待解析文件中的所有可操作元素,得到每个可操作元素的元素名称及界面坐标。
65.所有可操作元素形成可操作元素集。通过解析待解析文件,可以精准识别页面的所有可操作元素,使得测试过程触发的操作都是能够有效操作的元素,从而使得测试过程不会浪费在无效区域或不可触发区域。解析获得所有可操作元素的名称及坐标,无需提前知道页面应该有哪些元素,将可操作对象质点化,作为精准进行ui随机测试的前提。
66.步骤107、随机选择操作对象,其中,操作对象为优先操作图集、优先操作元素集或所有可操作元素中的一个对象。
67.由于预先划分了优先操作图集、优先操作元素集和可操作元素集,使优先操作图集中各张图片具有相同的地位,优先操作元素集中的各个元素具有相同的地位,所有可操
作元素也具有相同的地位,因此在选择操作对象时不会因为它们的分布规律或所在位置等因素而在随机选择时有所区别,确保随机测试时各元素的机会均等。
68.步骤109、根据随机操作动作的比例随机选择一个执行动作。
69.步骤111、将执行动作及操作对象的界面坐标合成执行指令。
70.步骤113、将执行指令发送至被测带屏设备,使被测带屏设备执行执行指令。
71.步骤115、返回对被测带屏设备的ui进行截图的步骤并重复运行,直至达到运行时间。
72.本发明实施例提供的方法,通过预先设置限制操作图集、限制操作元素集、优先操作图集和优先操作元素集,并在优先操作图集、优先操作元素集或所有可操作元素中随机选择操作对象,不仅使得ui随机测试所选择的操作对象既不是容易导致测试进入死循环或进行不下去的限制操作图或限制操作元素,也不是指定的某些个元素,真正实现了操作对象的有效随机选择,而且使得所有元素在同一个页面都是地位相同,与元素本身屏幕占比无关,与布局在中心或边缘无关,被触发的机会均等,从而实现了真正意义上的随机测试。通过解析待解析文件中的所有可操作元素并随机选择操作对象,可以精准识别页面的所有可操作元素,使得所触发的测试都是对有效操作元素的测试,进而使得测试过程不会浪费在无效区域或不可触发区域,确保可以随机测试到待测应用的所有功能。通过解析ui和图像识别,产生精准有效的对元素操作的随机事件流,无需详细了解各个ui界面的流转逻辑及操作限制,也不用编写测试程序,可快速设置的限制条件即可流转于整个应用中,可用于自动化随机测试和压力测试。
73.可选地,在执行步骤101之前,还可以包括如下步骤:与被测带屏设备连接后,获取对待测应用进行测试的测试参数,其中,测试参数至少包括被测带屏设备的标识、运行时间、限制操作图集、限制操作元素集、优先操作图集、优先操作元素集及各种随机操作动作的比例。
74.需要说明的是,该步骤为运行ui随机测试之前需要进行的步骤,并不是每次运行ui随机测试程序时都要执行,在运行ui随机测试之前预先设置好测试参数即可。
75.具体地,在与被测带屏设备连接时,可以通过数据线连接,也可以通过无线连接。
76.测试参数用于对ui随机测试过程中的一些指标进行限制或预设。被测带屏设备可以为移动终端、台式电脑或平板等任何可以运行待测应用的设备。被测带屏设备的标识可以为其设备唯一标识码,例如移动终端的标识可以为其imei(international mobile equipment identity,国际移动设备识别码)。运行时间为ui随机测试过程将要运行的时长。限制操作图集中包括一张或多张限制操作的图片。限制操作图片为容易导致ui测试程序进入死循环或进行不下去的图片。限制操作元素集中包括一个或多个限制操作元素。限制操作元素为容易导致ui测试程序进入死循环或进行不下去的元素。优先操作图集中包括一张或多张优先操作图。优先操作图为ui随机测试过程中需要优先测试的图片。优先操作元素集中包括一个或多个优先操作元素。优先操作元素为ui随机测试过程中需要优先测试的元素。各种随机操作动作包括点击操作、拖拽操作、输入操作和翻转操作等。随机操作动作的比例为ui随机测试过程中随机操作动作占所有执行动作的比例。例如,当点击操作的比例为50%时,表示点击操作占所有执行动作的一半。
77.进一步地,测试参数还可以包括限定的app范围,其为待测应用的部分或全部代
码。
78.其中,在获取对待测应用进行测试的测试参数时,可以包括如下步骤:
79.步骤1、获取从测试输入界面输入的被测带屏设备标识、运行时间、限制操作元素集、优先操作元素集及各种随机操作动作的比例。
80.如图3所示,其为一种ui随机测试软件的测试输入界面示意图。被测带屏设备标识、运行时间、限制操作元素集、优先操作元素集及各种随机操作动作的比例均可以由用户在测试输入界面上输入来实现。
81.步骤3、根据预设测试需求从被测带屏设备截取一个或多个限制操作图和优先操作图,分别形成限制操作图集和优先操作图集。
82.限制操作图和优先操作图可以通过在待测应用运行时对被测带屏设备进行截屏得到。如图2所示,其为待测应用在被测带屏设备运行时所截的一个ui的示意图,其为限制操作图集或优先操作图集中的一张图片。
83.下面描述图1所示的各个步骤的具体实现方式。
84.首先,步骤107在随机选择操作对象时,可以包括如下步骤:
85.步骤1071、判断是否存在优先操作对象。
86.步骤1073、如果优先操作图集或优先操作元素集中存在至少一个对象,则确定存在优先操作对象,并从优先操作图集中随机选择一张图片或从优先操作元素集中随机选择一个元素作为操作对象。
87.为确保优先操作图或优先操作元素能够优先被测试,在随机选择操作对象时,本发明实施例先判断优先操作图集或优先操作元素集中存在至少一个对象以确定是否存在优先操作对象,如果存在,则从优先操作图集或优先操作元素集中随机选择一个元素作为操作对象。通过随机选择,可以确保所选择的操作对象在所有优先操作对象中具有平等的地位。
88.步骤1075、如果优先操作图集和优先操作元素集中均无对象,则确定不存在优先操作对象,并随机选择一个名称不在限制操作元素集中,且界面坐标也不在限制操作图集中任一限制操作图片的界面区域范围内的可操作元素作为操作对象。
89.具体地,如果如果优先操作图集和优先操作元素集中均无对象,说明不存在优先操作对象,此时本发明实施例从可操作元素集中随机选择一个可操作元素作为操作对象。然而,为避免所选择的操作对象落入限制操作元素集或限制操作图集而使得ui测试程序陷入死循环或进行不下去,在从可操作元素集中随机选择操作对象时本发明实施例还要确保操作对象不在限制操作元素集或限制操作图集中。
90.通过如此选择操作对象,可以确保所选择的操作对象在除去优先操作图集或优先操作元素集中的元素后,剩余的所有元素随机成为有效操作元素的机会是均等的,不受元素大小和分布影响,确保能够筛选出真随机对象。
91.另外,步骤103在判断所截的图片中是否包括指定图片时,可以通过相似度算法来实现,具体可以包括如下步骤:
92.步骤1031、计算所截的图片与限制操作图集和优先操作图集中的每个图片之间的相似度。
93.具体的相似度算法可以根据需要选择,本发明实施例对此不作限定。
94.步骤1033、当所截的图片与限制操作图集或优先操作图集中的任一图片之间的相似度超过预设阈值时,确定所截的图片中包括指定图片。
95.预设阈值可以根据需要设定,预设阈值设置得越高,判断结果越准确。
96.进一步地,本发明实施例提供的方法,在被测带屏设备执行执行指令过程中,还可以记录所有执行动作的操作日志,其中,每条操作日志包括操作对象的名称、执行动作和界面坐标。
97.如图4所示,其为本发明实施例提供的ui随机测试方法所记录的操作日志的截图。如图5所示,其为现有技术的ui随机测试方法所记录的操作日志的截图。由图5可得,现有技术中的ui随机测试方法所记录的操作日志仅包括操作对象的执行动作和坐标,无法还原操作对象的原貌。本发明实施例提供的方法,由于操作对象是被识别后分配的,所记录的操作日志包括操作对象的名称、执行动作和界面坐标,可以还原当时具体是对哪个对象进行了什么操作,确保可以将随机测试的过程中的动作序列高度追溯还原,使得在任何时刻都能还原操作对象的原貌。
98.如图6所示,本发明实施例提供了一种ui随机测试方法,该方法可以包括以下步骤:
99.步骤601、与被测带屏设备连接后,获取对待测应用进行测试的测试参数,其中,测试参数至少包括被测带屏设备的标识、运行时间、限制操作图集、限制操作元素集、优先操作图集、优先操作元素集及各种随机操作动作的比例。
100.步骤603、判断是否达到运行时间。
101.步骤605、如果未达到运行时间,对被测带屏设备的ui进行截图,判断所截的图片中是否包括指定图片,其中,指定图片为限制操作图集或优先操作图集中的一张或多张图片;如果所截的图片中包括指定图片,则记录指定图片的界面区域范围。
102.步骤607、下载待测应用运行过程中的页面文件得到待解析文件,解析待解析文件中的所有可操作元素,得到每个可操作元素的元素名称及界面坐标。
103.步骤609、判断是否存在优先操作对象。
104.具体地,如果优先操作图集或优先操作元素集中存在至少一个对象,则确定存在优先操作对象。如果优先操作图集和优先操作元素集中均无对象,则确定不存在优先操作对象。
105.步骤611、如果确定存在优先操作对象,则从优先操作图集中随机选择一张图片或从优先操作元素集中随机选择一个元素作为操作对象,并根据随机操作动作的比例随机选择一个执行动作。
106.步骤613、如果确定不存在优先操作对象,则从所有可操作元素中随机选择一个可操作元素。
107.步骤615、判断所选择的可操作元素的名称是否在限制操作元素集中。
108.步骤617、如果所选择的可操作元素的名称不在限制操作元素集中,则判断所选择的可操作元素的界面坐标是否在任一限制操作图片的界面区域范围内;如果所选择的可操作元素的界面坐标也不在限制操作图集中任一限制操作图片的界面区域范围内,则将所选择的可操作元素作为操作对象,并根据随机操作动作的比例随机选择一个执行动作;
109.步骤619、将执行动作及操作对象的界面坐标合成执行指令,将执行指令发送至被
测带屏设备,使被测带屏设备执行执行指令,记录所有执行动作的操作日志。
110.本发明实施例提供的方法,通过预先设置限制操作图集、限制操作元素集、优先操作图集和优先操作元素集,并在优先操作图集、优先操作元素集或所有可操作元素中随机选择操作对象,不仅使得ui随机测试所选择的操作对象既不是容易导致测试进入死循环或进行不下去的限制操作图或限制操作元素,也不是指定的某些个元素,真正实现了操作对象的有效随机选择,而且使得所有元素在同一个页面都是地位相同,与元素本身屏幕占比无关,与布局在中心或边缘无关,被触发的机会均等,从而实现了真正意义上的随机测试。通过解析待解析文件中的所有可操作元素并随机选择操作对象,可以精准识别页面的所有可操作元素,使得所触发的测试都是对有效操作元素的测试,进而使得测试过程不会浪费在无效区域或不可触发区域,确保可以随机测试到待测应用的所有功能。本发明实施例提供的方法使ui随机测试执行动作有效性更高,功能模块覆盖率更广,页面层次深度更深,操作过程中对象精准,增加了ui随机测试在耐压性、稳定性上的使用。
111.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
112.本发明实施例提供了一种ui随机测试装置,图7示出根据一个实施例的该ui随机测试装置的示意性框图及其与被测带屏设备的交互示意图。可以理解,该ui随机测试装置可以为任何具有计算、处理能力的装置、设备、平台或设备集群。如图7所示,该ui随机测试装置包括:
113.截图及判断模块702,配置为当待测应用在被测带屏设备上运行时,对被测带屏设备的ui进行截图;判断所截的图片中是否包括指定图片,指定图片为限制操作图集或优先操作图集中的一张或多张图片;如果所截的图片中包括指定图片,则记录指定图片的界面区域范围;
114.页面解析模块703,配置为下载待测应用运行过程中的页面文件得到待解析文件,解析待解析文件中的所有可操作元素,得到每个可操作元素的元素名称及界面坐标;
115.操作对象筛选模块704,配置为随机选择操作对象,其中,操作对象为优先操作图集、优先操作元素集或所有可操作元素中的一个对象;
116.动作配置模块705,配置为根据随机操作动作的比例随机选择一个执行动作;
117.操作指令合成及发送模块706,配置为将执行动作及操作对象的界面坐标合成执行指令,将执行指令发送至被测带屏设备,使被测带屏设备执行执行指令;返回对被测带屏设备的ui进行截图的步骤并重复运行,直至达到运行时间。
118.本发明实施例提供的装置,通过预先设置限制操作图集、限制操作元素集、优先操作图集和优先操作元素集,并在优先操作图集、优先操作元素集或所有可操作元素中随机选择操作对象,不仅使得ui随机测试所选择的操作对象既不是容易导致测试进入死循环或进行不下去的限制操作图或限制操作元素,也不是指定的某些个元素,真正实现了操作对象的有效随机选择,而且使得所有元素在同一个页面都是地位相同,与元素本身屏幕占比无关,与布局在中心或边缘无关,被触发的机会均等,从而实现了真正意义上的随机测试。
通过解析待解析文件中的所有可操作元素并随机选择操作对象,可以精准识别页面的所有可操作元素,使得所触发的测试都是对有效操作元素的测试,进而使得测试过程不会浪费在无效区域或不可触发区域,确保可以随机测试到待测应用的所有功能。
119.可选地,ui随机测试装置还包括界面输入模块701,配置为与被测带屏设备连接后,获取对待测应用进行测试的测试参数,测试参数至少包括被测带屏设备的标识、运行时间、限制操作图集、限制操作元素集、优先操作图集、优先操作元素集及各种随机操作动作的比例。
120.可选地,操作对象筛选模块704包括:
121.第一随机选择单元,配置为如果优先操作图集或优先操作元素集中存在至少一个对象,则从优先操作图集中随机选择一张图片或从优先操作元素集中随机选择一个元素作为操作对象;
122.第二随机选择单元,配置为如果优先操作图集和优先操作元素集中均无对象,则随机选择一个名称不在限制操作元素集中,且界面坐标也不在限制操作图集中任一限制操作图片的界面区域范围内的可操作元素作为操作对象。
123.可选地,ui随机测试装置还包括日志记录模块707,配置为在被测带屏设备执行执行指令过程中,记录所有执行动作的操作日志,其中,每条操作日志包括操作对象的名称、执行动作和界面坐标。
124.可选地,截图及判断模块702还配置为:计算所截的图片与限制操作图集和优先操作图集中的每个图片之间的相似度;当所截的图片与限制操作图集或优先操作图集中的任一图片之间的相似度超过预设阈值时,确定所截的图片中包括指定图片。
125.可选地,界面输入模块701包括:
126.获取单元,配置为获取从被测带屏设备的输入界面输入的被测带屏设备标识、运行时间、限制操作元素集、优先操作元素集及各种随机操作动作的比例;
127.截图单元,配置为根据预设测试需求从被测带屏设备截取一个或多个限制操作图和优先操作图,分别形成限制操作图集和优先操作图集。
128.可以理解的是,本发明实施例示意的结构并不构成对ui随机测试装置的具体限定。在本发明的另一些实施例中,ui随机测试装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
129.上述装置内的各模块或单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
130.如图8所示,本发明实施例还提供了一种ui随机测试装置,包括:至少一个存储器和至少一个处理器;
131.所述至少一个存储器,用于存储机器可读程序;
132.所述至少一个处理器,用于调用所述机器可读程序,执行本发明任一实施例中的ui随机测试方法。
133.本发明实施例还提供了一种计算机可读介质,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,使所述处理器执行本发明任一实施例中的ui随机测试方法。具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实
现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
134.在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
135.用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd

rom、cd

r、cd

rw、dvd

rom、dvd

ram、dvd

rw、dvd+rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
136.此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
137.此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展单元中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展单元上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
138.需要说明的是,上述各流程和各系统结构图中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
139.以上各实施例中,硬件单元可以通过机械方式或电气方式实现。例如,一个硬件单元可以包括永久性专用的电路或逻辑(如专门的处理器,fpga或asic)来完成相应操作。硬件单元还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
140.上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1