弹窗处理方法及装置与流程

文档序号:26586978发布日期:2021-09-10 19:37阅读:118来源:国知局
弹窗处理方法及装置与流程

1.本技术涉及计算机技术领域,特别涉及一种弹窗处理方法。本技术同时涉及一种弹窗处理装置,一种计算设备,以及一种计算机可读存储介质。


背景技术:

2.随着计算机技术的快速发展,电子设备(特别是智能移动设备)的功能越来越强大,只要用户依照自身的需求在电子设备上安装各种应用程序安装包,便可以通过各种应用程序来完成各种事务。因而,应用程序开发方需要对各个不同分辨率、不同品牌、不同型号的电子设备进行兼容性测试。
3.现有技术中,在对海量的不同分辨率、不同品牌、不同型号的电子设备上进行自动化兼容性测试的过程中,电子设备上可能会弹出授权、验证等弹窗,此时测试人员可以手动点击处理各个电子设备上弹出的弹窗。然而,上述弹窗处理过程中,需要多次人工来回适配不同的弹窗样式,且需要人工频繁的手动点击处理弹窗,大大影响了兼容性测试的效率和准确率。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种弹窗处理方法。本技术同时涉及一种弹窗处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的兼容性测试的效率和准确率较低的问题。
5.根据本技术实施例的第一方面,提供了一种弹窗处理方法,包括:
6.获得至少一个待处理设备的设备界面图;
7.将所述设备界面图输入目标弹窗识别模型中,得到所述设备界面图对应的弹窗识别结果;
8.根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式;
9.根据所述弹窗识别结果,采用所述目标弹窗处理方式,对所述设备界面图中的弹窗进行处理。
10.根据本技术实施例的第二方面,提供了一种弹窗处理装置,包括:
11.获得模块,被配置为获得至少一个待处理设备的设备界面图;
12.输入模块,被配置为将所述设备界面图输入目标弹窗识别模型中,得到所述设备界面图对应的弹窗识别结果;
13.第一确定模块,被配置为根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式;
14.处理模块,被配置为根据所述弹窗识别结果,采用所述目标弹窗处理方式,对所述设备界面图中的弹窗进行处理。
15.根据本技术实施例的第三方面,提供了一种计算设备,包括:
16.存储器和处理器;
17.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现任意上述第一方面所述的弹窗处理方法的操作步骤。
18.根据本技术实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现任意上述第一方面所述的弹窗处理方法的操作步骤。
19.本技术提供的弹窗处理方法,可以获得至少一个待处理设备的设备界面图;然后将所述设备界面图输入目标弹窗识别模型中,得到所述设备界面图对应的弹窗识别结果;之后,根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式,并根据所述弹窗识别结果,采用所述目标弹窗处理方式,对所述设备界面图中的弹窗进行处理。这种情况下,可以通过训练好的目标弹窗识别模型自动对设备界面图进行识别,然后基于弹窗识别结果自动采用相应的处理方式对该设备界面图中的弹窗进行处理,由于训练得到的目标弹窗识别模型可以适配不同分辨率、不同品牌、不同型号的电子设备,因而无需测试人员一一适配不同的电子设备,也无需来回点击处理弹窗,大大提高了兼容性测试的效率和准确性。
附图说明
20.图1是本技术一实施例提供的一种弹窗识别模型的训练方法的流程图;
21.图2是本技术一实施例提供的一种弹窗处理方法的流程图;
22.图3是本技术一实施例提供的一种弹窗处理方法的架构图;
23.图4是本技术一实施例提供的一种被动弹窗处理方法的流程图;
24.图5是本技术一实施例提供的一种主动弹窗处理方法的流程图;
25.图6是本技术一实施例提供的一种弹窗处理装置的结构示意图;
26.图7是本技术一实施例提供的一种计算设备的结构框图。
具体实施方式
27.在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施的限制。
28.在本技术一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术一个或多个实施例。在本技术一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本技术一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
29.应当理解,尽管在本技术一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
30.需要说明的是,现有的兼容性测试方案,当需要同时在海量的不同分辨率、不同品
牌、不同型号的电子设备上进行自动化兼容性测试时,一般需要测试人员频繁手动的去点击处理电子设备上授权、验证等弹窗,需要多次人工回来适配不同机型的弹窗样式和人工频繁的去点击授权弹窗。
31.另外,现有自动化兼容性测试中,可以通过元素定位的方式一台一台电子设备去做适配,由于每个弹窗都会有一个相应的弹窗控件,一个电子设备上可能就存在多个不同的弹窗控件,每个弹窗控件要存储对应的处理方式,因而需要不断遍历读取手机控件的元素信息,且需要维护大量的弹窗控件和处理方式之间的对应关系,可能会占用大量电子设备和服务器资源,另外还无法自适应未经过适配的电子设备,某些情况下会出现漏处理,导致部分设备自动化流程中断以及造成测试结果不准确、漏测等情况。
32.因而本技术实施例提供了一种弹窗处理方法及装置,通过深度学习和目标识别技术自动预先对不同分辨率、不同品牌、不同型号的电子设备的弹窗页面进行训练模型,利用模型预测出电子设备的处理控件位置坐标,并自动对电子设备进行授权处理,避免了测试人员执行大量兼容性测试任务过程中需要来回点击弹窗的情况,同时本技术实施例还可以自适应不同分辨率、不同品牌、不同型号的电子设备,无需人工一台一台适配电子设备,大大提高了兼容性测试的效率和准确性。
33.在本技术中,提供了一种弹窗处理方法。本技术同时涉及一种弹窗处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
34.图1示出了根据本技术一实施例提供的一种弹窗识别模型的训练方法的流程图,具体包括以下步骤:
35.步骤102:获取至少两个样本设备的第i组样本图片,所述第i组样本图片中包括不同样本设备的样本图片。
36.其中,i从1开始,即初始时所述i等于1。
37.具体的,样本设备可以是指用于训练弹窗识别模型的设备,各个样本设备的分辨率、品牌、型号均可以不同,样本图片是样本设备的弹窗截图,用于作为训练弹窗识别模型的样本数据。
38.需要说明的是,获取到的样本设备越多,训练得到的弹窗识别模型就越准确,且样本设备的分辨率、品牌、型号越多,训练得到的弹窗识别模型就越能适应多种多样的设备。实际应用中,样本设备的个数可以较多,本技术实施例对此不进行限制,如100个、1000个、10000个等等。
39.本实施例一个可选的实施方式中,可以针对每个样本设备获取一定数量的样本图片,从而将基于各个样本设备获取到的样本图片组合为一组样本图片,也即获取至少两个样本设备的第i组样本图片,具体实现过程可以为:
40.针对所述至少两个样本设备中的每个样本设备,获取所述样本设备的预设数目张弹窗截图;
41.将获取到的预设数目张弹窗截图组合为所述第i组样本图片。
42.具体的,预设数目可以是预先设置的数值,该预设数目是指针对1个样本设备,一次获取几张弹窗截图,即一组样本图片中包括几张同一样本设备的弹窗截图,如预设数目可以是1、3、5、8、10等等。
43.示例的,假设有100个样本设备,预设数目为1,则针对100个样本设备中的每个样
本设备,获取1张弹窗截图,然后将基于该100个样本设备获取到的100张弹窗截图作为第1组样本图片。或者,假设预设数目为3,则针对100个样本设备中的每个样本设备,获取3张弹窗截图,然后将基于该100个样本设备获取到的300张弹窗截图作为第1组样本图片。
44.本技术实施例中针对每个样本设备获取相同数量的弹窗截图,从而组成一组样本图片对弹窗识别模型进行训练,也即每组样本图片中包括的各个样本设备的样本图片的个数是相同的,均为预设数目张,避免了由于一组样本图片中某个样本设备的样本图片多于其他设备,而导致的后续训练弹窗识别模型时,模型参数偏向于某一类型的设备,进而导致的训练得到的弹窗识别模型的准确度和适配性较差,保证了训练得到的弹窗识别模型不会出现偏向,提高了弹窗识别模型的准确度和适配性。
45.另外,除了上述样本图片的分组方式之外,实际应用中,还可以采用其他规则对至少两个样本设备的样本图片进行随机分组,本技术实施例不进行限制,如可以先针对至少两个样本设备中的各个样本设备获取到大量的样本图片,然后从中随机选取预设数量张样本图片作为第1组样本图片。
46.示例的,假设有100个样本设备,基于该100个样本设备获取到了10000张样本图片,从该10000张样本图片中随机选取100张样本图片,选取的100张样本图片可以至少来自2个不同的样本设备,将选取的该100张样本图片作为第1组样本图片。
47.本技术实施例中可以针对至少两个样本设备获取第i组样本图片,后续可以基于该组样本图片训练得到弹窗识别模型,通过对样本设备的样本图片进行分组的形式,后续可以训练得到多个弹窗识别模型,以供比较选择,从而可以提高后续最终获得的目标弹窗识别模型的灵活性和准确性。
48.步骤104:根据所述第i组样本图片,对初始识别模型进行训练,得到第i个弹窗识别模型。
49.需要说明的是,获取到一组样本图片后,可以将该组样本图片中包括的各个样本图片输入初始识别模型中,基于预测的输出,计算损失值,对初始识别模型的参数进行调整,从而训练得到对应的弹窗识别模型。
50.本实施例一个可选的实施方式中,由于在计算损失值时,需要将预测的结果和样本图片携带的标签进行比较,因而所述第i组样本图片中每个样本图片携带有第一样本弹窗类型和第一样本处理控件位置坐标;此时根据所述第i组样本图片,对初始识别模型进行训练,得到第i个弹窗识别模型,具体实现过程可以如下:
51.将所述第i组样本图片中的第j个样本图片输入所述初始识别模型中,得到所述第j个样本图片对应的第一预测弹窗类型和第一预测处理控件位置坐标,所述j等于1;
52.基于所述第j个样本图片携带的第一样本弹窗类型和第一样本处理控件位置坐标,以及所述第一预测弹窗类型和第一预测处理控件位置坐标,确定所述初始识别模型的损失值;
53.基于所述损失值调整所述初始识别模型的参数,对所述初始识别模型进行训练,令j自增1,返回执行所述将所述第i组样本图片中的第j个样本图片输入所述初始识别模型中的操作步骤,直至所述j等于所述第i组样本图片中包括的样本图片的个数,得到所述第i个弹窗识别模型。
54.具体的,第一样本弹窗类型和第一样本处理控件位置坐标是样本图片携带的样本
标签,即样本图片对应的真实结果,第一样本弹窗类型可以是指弹窗的处理类型,如点击类弹窗、输入类弹窗、滑动类弹窗等等,第一样本处理控件位置坐标可以是指弹窗中等待操作的控件在样本图片中的位置的坐标,如对于点击类弹窗,处理控件位置坐标可以是指弹窗中“确认按钮”的位置的坐标,对于输入类弹窗,处理控件位置坐标可以是指弹窗中“输入框”的位置的坐标,对于滑动类弹窗,处理控件位置坐标可以是指弹窗中“滑块”的位置的坐标。
55.需要说明的是,从一组样本图片中随机获取一张样本图片,将该样本图片输入初始识别模型中,可以得到该初始识别模型输出的预测结果,即第一预测弹窗类型和第一预测处理控件位置坐标,然后将预测结果和样本标签(即真实结果)进行比较,可以得到初始识别模型的损失值,基于该损失值可以反向调整初始识别模型的模型参数;然后,确定当前获取到的样本图片是否为该组样本图片中的最后一张样本图片,若否,再继续从该组样本图片中随机获取下一张样本图片,继续将该样本图片输入初始识别模型中,继续计算损失值,反向调整初始识别模型的模型参数,直至基于该组样本图片中的最后一张样本图片完成反向参数调整,此时一轮训练完毕,可以得到相应的一个弹窗识别模型。
56.实际应用中,可以通过多种机器学习的算法,对初始识别模型进行训练,得到第i个弹窗识别模型,如可以通过yolo机器学习算法对获取到的各个样本图片进行训练和学习,其中,yolo机器学习算法是一种基于深度学习的回归方法。
57.示例的,假设获取到的第1组样本图片共包括100张样本图片,每个样本图片均携带有样本标签(第一样本弹窗类型和第一样本处理控件位置坐标)。从该组样本图片中随机获取第1张样本图片,对初始识别模型进行训练;然后,确定当前获取到的样本图片是否为该组样本图片中的最后一张样本图片,若否,则继续从该组样本图片中随机获取下一张样本图片,继续对该初始识别模型进行训练,直至当前获取到的样本图片为该组样本图片中的最后一张样本图片,得到第1个弹窗识别模型。
58.本技术实施例中,一组样本图片全部输入初始识别模型,对初始识别模型的参数进行调整后,可以确定达到训练停止条件,得到相应的一个弹窗识别模型,通过计算预测结果和样本标签之间的损失值可以直观的示出模型的预测结果与真实结果之间的差异,再对初始模型的参数进行针对性调整,可以有效提高模型训练的速率及模型训练的效果。
59.步骤106:令i自增1,返回执行所述步骤102的操作步骤,直至所述i满足预设条件,得到i个弹窗识别模型。
60.具体的,预设条件可以是指预先设置的训练停止条件,即停止继续获取下一组样本图片进行训练的条件,也即若弹窗识别模型的个数满足预设条件,则说明已经获取到足够多的弹窗识别模型,无需再继续获取下一组样本图片进行训练;若弹窗识别模型的个数不满足预设条件,则说明还未获取到足够多的弹窗识别模型,可以再继续获取下一组样本图片进行训练。
61.实际应用中,当基于一组样本图片对初始识别模型进行训练,得到对应的一个弹窗识别模型后,可以继续获取下一组样本图片,然后基于该下一组样本图片对新的初始识别模型进行训练,得到对应的另一个弹窗识别模型,直至满足预设条件时,可以得到多个弹窗识别模型。
62.需要说明的是,一组样本图片可以完成一轮训练,得到一个弹窗识别模型,那么获
取到几组样本图片,就可以完成几轮训练,得到几个弹窗识别模型。也即,获得的弹窗识别模型的个数i,与获取到的样本图片的组数i相同。
63.示例的,假设有100个样本设备,预设数目为1,则针对100个样本设备中的每个样本设备,随机获取第1张弹窗截图,然后将基于该100个样本设备获取到的100张弹窗截图作为第1组样本图片,基于第1组样本图片包括的100弹窗截图对初始识别模型进行训练,得到对应的第1个弹窗识别模型。然后,确定弹窗识别模型的个数是否满足预设条件,若否,则继续针对100个样本设备中的每个样本设备,再随机获取第2张弹窗截图,可以得到另外100张弹窗截图,然后将获取到的该100张弹窗截图作为第2组样本图片,基于第2组样本图片包括的100弹窗截图对新的初始识别模型进行训练,可以得到对应的第2个弹窗识别模型,直至弹窗识别模型的个数满足预设条件,可以得到多个弹窗识别模型。
64.本实施例一个可选的实施方式中,每训练得到一个弹窗识别模型,可以输出该弹窗识别模型的损失值,如果当前训练得到的弹窗识别模型的损失值已经几乎不能再减少,即与前一个弹窗识别模型的损失值相差无几,则可以说明当前训练得到的弹窗识别模型的识别准确度已经较为准确,无需再继续训练下一个弹窗识别模型,即此时满足预设条件,因而所述预设条件,可以包括:训练得到的第i个弹窗识别模型与第i

1个弹窗识别模型的损失值差值小于差值阈值。
65.具体的,差值阈值可以是指预先设置的数值,用来判断当前训练得到的弹窗识别模型的损失值与前一个训练得到的损失值之间的差值是否过小,若是,则说明弹窗识别模型的损失值已经变化不大,此时可以停止继续训练下一个弹窗识别模型。
66.示例的,假设差值阈值为0.2,第50个弹窗识别模型的损失值是1.54,第51个弹窗识别模型的损失值是1.50,第52个弹窗识别模型的损失值是1.47,第53个弹窗识别模型的损失值是1.46,此时由于第53个弹窗识别模型与第52个弹窗识别模型的损失值差值小于差值阈值,因而确定满足预设条件,不再继续训练第54个弹窗识别模型。
67.另外,除了基于当前弹窗识别模型和前一个弹窗识别模型之间的损失值差值确定是否满足预设条件(即是否停止下一轮训练)外,由于一个弹窗识别模型的损失值可能会出现浮动,因而可以基于连续的预设数值个弹窗识别模型的损失值变化率,确定当前是否满足预设条件,若连续预设数值个弹窗识别模型的损失值变化率都低于变化率阈值,则说明满足预设条件,可以停止下一轮训练。也即,所述预设条件还可以包括:连续预设数值个弹窗识别模型的损失值变化率均低于变化率阈值。
68.示例的,假设变化率阈值为2%,第50个弹窗识别模型的损失值是1.54,第51个弹窗识别模型的损失值是1.50,损失值变化率为4%,高于变化率阈值;第52个弹窗识别模型的损失值是1.51,损失值变化率为1%,低于变化率阈值;第53个弹窗识别模型的损失值是1.52,损失值变化率依旧为1%,低于变化率阈值;第54个弹窗识别模型的损失值是1.51,损失值变化率依旧为1%,低于变化率阈值。假设预设数值为3,则第54个弹窗识别模型的损失值变化率已经是第3个低于变化率阈值的弹窗识别模型,因而确定满足预设条件,不再继续训练第55个弹窗识别模型。
69.再者,除了上述基于弹窗识别模型的损失值确定预设条件外,还可以预先设置一个训练的迭代次数,即预先设置所需的弹窗识别模型的个数,当弹窗识别模型的个数i和预先设置的弹窗识别模型个数相同时,确定满足所述预设条件,也即,所述预设条件还可以包
括:训练得到的弹窗识别模型的个数i与预设的弹窗识别模型个数相同。
70.示例的,预先设置弹窗识别模型个数为100,则当得到第100个弹窗识别模型时,确定弹窗识别模型的个数满足预设条件,得到训练好的100个弹窗识别模型。
71.本技术实施例中可以基于多组样本图片训练得到多个弹窗识别模型,便于后续可以从多个弹窗识别模型中筛选出性能较好的目标弹窗识别模型,从而使得后续可以通过该目标弹窗模型自动对兼容性测试过程的弹窗进行识别和处理。
72.步骤108:基于预测图片集,确定所述i个弹窗识别模型中每个弹窗识别模型的预测准确度,并基于所述预测准确度筛选出目标弹窗识别模型。
73.具体的,预测图片集可以是指验证各个弹窗识别模型的预测准确度的验证集,该预测图片集可以和上述获取到的各组样本图片相同、部分相同或者完全不同。该预测图片集中可以包括大量的预测图片,且每个预测图片均携带相应的标签,即第二样本弹窗类型和第二样本处理控件位置坐标,从而可以将预测图片集中的各个预测图片输入弹窗识别模型中,计算该弹窗识别模型的预测准确度。
74.本实施例一个可选的实施方式中,所述预测图片集携带第二样本弹窗类型和第二样本处理控件位置坐标;此时基于预测图片集,确定所述i个弹窗识别模型中每个弹窗识别模型的预测准确度,并基于所述预测准确度筛选出目标弹窗识别模型,具体实现过程可以如下:
75.针对所述i个弹窗识别模型中的每个弹窗识别模型,将所述预测图片集中的各个预测图片输入所述弹窗识别模型,得到所述各个预测图片对应的第二预测弹窗类型和第二预测处理控件位置坐标;
76.基于所述各个预测图片携带的第二样本弹窗类型和第二样本处理控件位置坐标,以及所述第二预测弹窗类型和第二预测处理控件位置坐标,确定所述弹窗识别模型的预测准确度;
77.将所述i个弹窗识别模型中预测准确度最高的弹窗识别模型确定为筛选出的目标弹窗识别模型。
78.实际应用中,针对某个弹窗识别模型,可以将预测图片集中包括的各个预测图片输入该弹窗识别模型中。若该弹窗识别模型输出的第二预测弹窗类型和第二预测处理控件位置坐标,与输入的预测图片携带的第二样本弹窗类型和第二样本处理控件位置坐标相似度高于相似度阈值,则说明该弹窗识别模型对输入的预测图片预测准确;若该弹窗识别模型输出的第二预测弹窗类型和第二预测处理控件位置坐标,与输入的预测图片携带的第二样本弹窗类型和第二样本处理控件位置坐标相似度未高于相似度阈值,则说明该弹窗识别模型对输入的预测图片预测错误。统计该预测图片集中各个预测图片的预测结果,可以计算得到该弹窗识别模型的预测准确度,以此类推,可以计算得到每个弹窗识别模型的预测准确度。
79.需要说明的是,相似度阈值可以是预先设置的数值,用于判断弹窗识别模型预测的弹窗类型和处理控件位置坐标是否与真实的弹窗类型和处理控件位置坐标相似,即用于判断弹窗识别模型识别的结果是否准确,如某个预测图片携带的第二样本弹窗类型和第二样本处理控件位置坐标为(点击类,(2,3)),某弹窗识别模型预测出的第二预测弹窗类型和第二预测处理控件位置坐标为(点击类,(1.98,3.01)),假设相似度阈值为95%,由于该弹
窗识别模型预测出的结果,与预测图片携带的真实结果相差较小,即相似度大于95%,此时说明该弹窗识别模型对该预测图片识别准确。
80.示例的,假设训练得到了100个弹窗识别模型,针对该100个弹窗识别模型中的第1个弹窗识别模型,将预测图片集中包括的1000张预测图片分别输入该弹窗识别模型,假设1000张预测图片中有400张预测错误,有600张预测准确,则该第1个弹窗识别模型的预测准确度为60%。以此类型,继续基于该1000张预测图片计算其他弹窗识别模型的预测准确度,直至该100个弹窗识别模型均计算出对应的预测准确度。
81.另外,计算出各个弹窗识别模型的预测准确度后,可以基于该预测准确度从得到的i个弹窗识别模型中选取一个目标弹窗识别模型,作为后续弹窗处理的识别模型。实际实现时,可以直接将i个弹窗识别模型中预测准确度最高的弹窗识别模型确定为筛选出的目标弹窗识别模型;当然,也可以预先设置一个置信度阈值,确定出i个弹窗识别模型中预测准确度高于该置信度阈值的弹窗识别模型,然后再从中随机筛选出一个目标弹窗识别模型。
82.本技术实施例中每组样本图像中均包括有不同样本设备的样本图片,基于每组样本图像训练得到的弹窗识别模型均可以适配不同的设备,提高了训练得到的弹窗识别模型的准确度,且在基于多组样本图片训练得到多个弹窗识别模型后,可以基于每个弹窗识别模型的预测准确度,从中筛选出目标弹窗识别模型,筛选得到的目标弹窗识别模型可以较为准确地识别出图片中弹窗,即训练、筛选出的目标弹窗识别模型识别弹窗的准确度较高,从而使得后续可以通过训练好的目标弹窗模型自动对兼容性测试过程的弹窗进行识别和处理,大大提高了弹窗的处理效率和准确度。
83.本实施例一个可选的实施方式中,在筛选出目标弹窗识别模型后,可以应用该目标弹窗识别模型对设备界面图进行识别,然后可以基于识别失败的设备界面图,继续对目标弹窗识别模型进行训练,也即基于所述预测准确度筛选出目标弹窗识别模型之后,还包括:
84.获取待识别设备界面图;
85.将所述待识别设备界面图输入所述目标弹窗识别模型,并根据所述目标弹窗识别模型的输出结果确定所述待识别设备界面是否识别成功;
86.若所述待识别设备界面图未识别成功,则基于所述待识别设备界面图,继续对所述目标弹窗识别模型进行训练,得到更新后的目标弹窗识别模型。
87.需要说明的是,若设备界面图为包括有弹窗的图片,但是基于目标弹窗识别模型的输出结果却确定出该设备界面图中不包括弹窗,或者输出结果中识别准确度低于置信度阈值,此时可以确定该待识别设备界面未识别成功;若设备界面图为不包括弹窗的图片,但是基于目标弹窗识别模型的输出结果却确定出该设备界面图中包括弹窗,或者输出结果中识别准确度高于置信度阈值,此时也可以确定该待识别设备界面未识别成功。
88.本技术实施例中可以采集识别失败的设备界面图,从而对该目标弹窗识别模型继续进行训练,可以不断提高和强化目标识别模型的准确度。
89.本实施例一个可选的实施方式中,若存在新分辨率、新品牌或者新型号的设备需要进行自动化兼容性测试,那么可以直接将该新的设备作为新样本设备,继续对该目标弹窗识别模型进行继续,即可使得该目标弹窗识别模型适配该新样本设备,也即基于所述预
测准确度筛选出目标弹窗识别模型之后,还包括:
90.在存在新样本设备的情况下,根据所述新样本设备的样本图片,继续对所述目标弹窗识别模型进行训练,得到更新后的目标弹窗识别模型。
91.需要说明的是,本技术实施例中对于新设备的接入,只需针对新设备的弹窗截图进行一次训练,即可使得目标弹窗识别模型可以识别新设备中的弹窗,从而进行自动化兼容性测试,减少了新设备的适配时间,大大提高了自动化兼容性测试的效率。
92.本技术提供的弹窗识别模型的训练方法,每组样本图像中均包括有不同样本设备的样本图片,基于每组样本图像训练得到的弹窗识别模型均可以适配不同的设备,提高了训练得到的弹窗识别模型的准确度,且在基于多组样本图片训练得到多个弹窗识别模型后,可以基于每个弹窗识别模型的预测准确度,从中筛选出目标弹窗识别模型,筛选得到的目标弹窗识别模型可以较为准确地识别出图片中弹窗,即训练、筛选出的目标弹窗识别模型识别弹窗的准确度较高,从而使得后续可以通过训练好的目标弹窗模型自动对兼容性测试过程的弹窗进行识别和处理,大大提高了弹窗的处理效率和准确度,保证了自动化兼容性测试可以稳定、高效、准确地进行。
93.图2示出了根据本技术一实施例提供的一种弹窗处理方法的流程图,应用于弹窗处理工具中,具体包括以下步骤:
94.步骤202:获得至少一个待处理设备的设备界面图。
95.具体的,待处理设备可以是指等待进行自动化兼容性测试的设备。设备界面图可以是指针对待处理设备的界面进行截图得到的图片。
96.需要说明的是,在需要对大批量的待处理设备进行自动化兼容性测试时,可以获得各个待处理设备的设备界面图,从而后续可以基于训练、筛选出的目标弹窗识别模型自动识别设备界面图中的弹窗,并自动对弹窗进行处理。
97.本实施例一个可选的实施方式中,弹窗处理工具可以被动接收至少一个待处理设备的设备界面图,也即获得至少一个待处理设备的设备界面图,具体实现过程可以如下:
98.接收自动化测试服务发送的至少一个待处理设备的设备界面图,所述设备界面图为所述自动化测试服务从所述至少一个待处理设备中获取到的界面截图。
99.需要说明的是,自动化测试服务可以是指一种中间服务,该自动化测试服务可以自动控制对至少一个待处理设备的设备界面进行截图,获取到该至少一个待处理设备的设备界面图,并将该至少一个待处理设备的设备界面图推送给弹窗处理工具,弹窗处理工具可以向外提供一种服务接口,通过该服务接口可以被动接收自动化测试服务发送的设备界面图。
100.本实施例一个可选的实施方式中,弹窗处理工具还可以主动获取至少一个待处理设备的设备界面图,也即获得至少一个待处理设备的设备界面图,具体实现过程还可以如下:
101.通过多线程从所述至少一个待处理设备中获取界面截图;
102.将获取到的各个界面截图确定为所述至少一个待处理设备的设备界面图。
103.需要说明的是,弹窗处理工具可以创建多线程,通过多线程并发主动从至少一个待处理设备中获取界面截图,该各个界面截图即为至少一个待处理设备的设备界面图。
104.本技术实施例中弹窗处理工具可以被动接收自动化测试服务发送的至少一个待
处理设备的设备界面图,也可以不通过自动化测试服务,主动通过多线程并发获取至少一个待处理设备的设备界面图,获取设备界面的过程灵活性较高,可以适应不同应用场景的具体需求。
105.步骤204:将所述设备界面图输入目标弹窗识别模型中,得到所述设备界面图对应的弹窗识别结果。
106.具体的,所述目标弹窗识别模型可以通过上述图1所示的弹窗识别模型的训练方法训练得到。
107.需要说明的是,由于训练目标弹窗识别模型时,样本图片携带的样本标签为弹窗类型和处理控件位置坐标,因而该目标弹窗识别模型可以较为准确地识别出设备界面图中的弹窗类型和处理控件位置坐标。也即是,弹窗识别结果中可以包括目标弹窗识别模型输出的弹窗类型和处理控件位置坐标,其中,弹窗类型可以是指弹窗的处理类型,如点击类弹窗、输入类弹窗、滑动类弹窗等等,处理控件位置坐标可以是指弹窗中等待操作的控件在设备界面图中的位置的坐标,如对于点击类弹窗,处理控件位置坐标可以是指弹窗中“确认按钮”的位置的坐标,对于输入类弹窗,处理控件位置坐标可以是指弹窗中“输入框”的位置的坐标,对于滑动类弹窗,处理控件位置坐标可以是指弹窗中“滑块”的位置的坐标。
108.本技术实施例中目标弹窗识别模型是基于大量的样本图片训练、筛选出的准确度较高的弹窗识别模型,因而目标弹窗识别模型可以较为准确地识别出设备界面图中的弹窗,后续可以基于目标弹窗识别模型输出的识别结果,即弹窗识别结果,自动化批量处理各个待处理设备中的弹窗。
109.步骤206:根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式。
110.需要说明的是,训练目标弹窗识别模型时,样本图片携带的样本标签为弹窗类型和处理控件位置坐标,因而目标弹窗识别模型输出的弹窗识别结果中可以包括弹窗类型和处理控件位置坐标。由于不同的弹窗类型可以有不同的处理方式,因而基于弹窗识别结果中的弹窗类型,可以确定出设备界面图对应的目标弹窗处理方式。
111.本实施例一个可选的实施方式中,所述弹窗识别结果包括弹窗类型和处理控件位置坐标;此时根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式,具体实现过程可以如下:
112.根据所述弹窗识别结果中的弹窗类型,在预先存储的弹窗类型和处理方式之间的对应关系中查找,确定所述弹窗识别结果中的弹窗类型对应的处理方式;
113.将所述弹窗识别结果中的弹窗类型对应的处理方式,确定为所述设备界面图对应的目标弹窗处理方式。
114.实际应用中,可以按照处理类型对弹窗进行分类,因而弹窗类型和处理方式之间的对应关系实际上是不同处理类型的弹窗,对应的处理方式。需要说明的是,弹窗处理工具中可以预先存储各个弹窗类型和处理方式之间的对应关系,将某个设备界面图输入目标弹窗识别模型后,目标弹窗识别模型可以输出该设备界面图的弹窗识别结果,该弹窗识别结果中可以包括弹窗的类型和处理控件位置坐标,此时可以在预先存储的弹窗类型和处理方式之间的对应关系中查找,从而确定出弹窗识别结果中的弹窗类型对应的处理方式,该处理方式就是该设备界面图中的弹窗的处理方式。
115.本技术实施例中,可以预先将弹窗基于处理方式划分为几大类,然后存储每一类弹窗对应的处理方式,从而在基于目标弹窗识别模型得到弹窗识别结果后,可以直接查找出弹窗识别结果中弹窗类型对应的处理方式,便于后续按照相应的处理方式自动对弹窗进行处理。
116.示例的,预设存储的弹窗类型和处理方式之间的对应关系如下表1所示,假设将某个设备界面图输入目标弹窗识别模型后,得到的弹窗识别结果中的弹窗类型为点击类,此时可以通过如下表1查找到弹窗识别结果中的弹窗类型对应的处理方式为点击处理,即该设备界面图对应的目标弹窗处理方式为点击处理。
117.表1弹窗类型和处理方式之间的对应关系表
118.弹窗类型处理方式点击类点击处理输入类输入预设密码滑动类滑动处理
119.本实施例一个可选的实施方式中,由于训练目标弹窗识别模型时,样本图片携带的样本标签为弹窗类型和处理控件位置坐标,因而无论输入目标弹窗识别模型的设备界面图中是否包括弹窗,该目标弹窗识别模型均会输出弹窗类型和处理控件位置坐标,但是对于不包括弹窗的设备界面图是无需进行弹窗处理的,因而还可以预先根据目标弹窗识别模型输出的识别结果,确定输入目标弹窗识别模型的设备界面图中是否包括有弹窗,也即所述弹窗识别结果包括弹窗类型和处理控件位置坐标;根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式之前,还包括:
120.根据所述弹窗识别结果中包括的弹窗类型和处理控件位置坐标,确定设备界面图中是否存在弹窗;
121.在确定出所述设备界面图中存在弹窗的情况下,执行所述根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式的操作步骤。
122.需要说明的是,若设备界面图中存在弹窗,则说明后续需要对设备界面图中的弹窗进行处理,那么就需要确定弹窗的处理方式,而若设备界面图中不存在弹窗,则说明后续无需对设备界面图中的弹窗进行处理,那么就无需确定弹窗的处理方式。也即,在确定出设备界面图中存在弹窗的情况下,再根据弹窗识别结果,确定设备界面图对应的目标弹窗处理方式,避免无用操作耗费资源。
123.本实施例一个可选的实施方式中,由于若设备界面图中不存在弹窗,那么目标弹窗识别模型无法识别出准确的弹窗类型和处理控件位置坐标,此时目标弹窗识别模型可能会输出一些异常字符,也即可以基于弹窗类型和处理控件位置坐标是否为正常的结果,来确定设备界面图中是否存在弹窗,也即根据所述弹窗识别结果中包括的弹窗类型和处理控件位置坐标,确定设备界面图中是否存在弹窗,具体实现过程可以如下:
124.确定所述弹窗类型和处理控件位置坐标是否为预设异常字符;
125.若是,则确定所述设备界面图中不存在弹窗;
126.若否,则确定所述设备界面图中存在弹窗。
127.具体的,预设异常字符可以为预先设置的字符,该字符可以表示无法正常识别出弹窗类型和处理控件位置坐标,如预设异常字符可以为^、*、?、~或者空等。
128.需要说明的是,若将某个设备界面图输入目标弹窗识别模型中,目标弹窗识别模型输出的弹窗识别结果中弹窗类型和处理控件位置坐标不为预设异常字符,则说明该弹窗类型和处理控件位置坐标正常,即目标弹窗识别模型可以正常识别出输入的设备界面图中存在的弹窗,此时可以确定该设备界面图中存在弹窗。若将某个设备界面图输入目标弹窗识别模型中,目标弹窗识别模型输出的弹窗识别结果中弹窗类型和处理控件位置坐标为预设异常字符,则说明该弹窗类型和处理控件位置坐标异常,此时可以确定该设备界面图中不存在弹窗。
129.示例的,预设异常字符为^、*、?、~、空等,假设获取到了3张设备界面图,分别为:设备界面图1、设备界面图2和设备界面图3。将设备界面图1输入目标弹窗识别模型中,输出的弹窗识别结果为(点击类,(2,3)),由于该弹窗识别结果不为预设异常字符,因而可以确定设备界面图1中存在弹窗;将设备界面图2输入目标弹窗识别模型中,输出的弹窗识别结果为(输入类,(8,2)),由于该弹窗识别结果不为预设异常字符,因而可以确定设备界面图2中存在弹窗;将设备界面图3输入目标弹窗识别模型中,输出的弹窗识别结果为(空,空),由于该弹窗识别结果为预设异常字符,因而可以确定设备界面图3中不存在弹窗。
130.本技术实施例中可以先基于目标弹窗识别模型输出的弹窗识别结果中弹窗类型和处理控件位置坐标是否为异常字符,来确定输入目标弹窗识别模型中的设备界面图中是否存在弹窗,在确定出设备界面图中存在弹窗的情况下,再根据弹窗识别结果,确定设备界面图对应的目标弹窗处理方式,避免无用操作耗费资源。
131.本实施例一个可选的实施方式中,在确定出设备界面图中存在弹窗的情况下,即目标弹窗识别模型输出的是正常的弹窗类型和处理控件位置坐标,此时还可以进一步基于识别的准确度,确定后续是否对该弹窗进行处理,也即所述弹窗识别结果还包括弹窗识别置信度;根据所述弹窗识别结果中包括的弹窗类型和处理控件位置坐标,确定设备界面图中是否存在弹窗之后,还包括:
132.在确定出所述设备界面图中存在弹窗的情况下,确定所述弹窗识别置信度是否大于置信度阈值;
133.若所述弹窗识别置信度大于置信度阈值,则执行所述根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式的操作步骤。
134.具体的,置信度阈值可以是预先设置的数值,用于确定弹窗识别结果是否较为准确,可以认为弹窗识别置信度高于置信度阈值时,弹窗才值得处理,如置信度阈值可以为0.75。
135.实际应用中,将一个设备界面图输入目标识别模型中,目标识别模型的概率分析层需要对该设备界面图的各个区域进行图像分析,确定每个区域为弹窗区域的概率,然后将概率最大的区域确定为存在弹窗的区域,对该区域进行分析,从而输出弹窗识别结果。因而目标弹窗识别模型除了输出弹窗类型和处理控件位置坐标外,还可以将概率分析层确定出的概率概作为弹窗识别结果输出,即弹窗识别置信度,该弹窗识别置信度用于是指输出的弹窗类型和处理控件位置坐标有多大概率是正确的。
136.需要说明的是,若弹窗识别置信度大于置信度阈值,则说明目标弹窗识别模型输出的弹窗识别结果中弹窗类型和处理控件位置坐标较为准确,后续可以基于弹窗类型和处理控件位置坐标自动处理弹窗,因而可以根据弹窗识别结果,确定设备界面图对应的目标
弹窗处理方式,从而自动对弹窗进行处理。若弹窗识别置信度不大于置信度阈值,则说明虽然目标弹窗识别模型输出了的弹窗类型和处理控件位置坐标,但是该弹窗类型和处理控件位置坐标较的准确度较差,即该弹窗类型和处理控件位置坐标可能并不是真实弹窗的信息,因而此时可以不对弹窗进行处理,因而可以不执行根据弹窗识别结果,确定设备界面图对应的目标弹窗处理方式的操作,从而避免无用操作耗费资源。
137.沿用上例,假设置信度阈值为0.75,设备界面图1的弹窗识别结果为(点击类,(2,3),0.85),由于该识别结果中的弹窗识别置信度大于置信度阈值,因而确定该弹窗识别结果的识别准确度较高,后续可以基于(点击类,(2,3))自动对弹窗进行处理,即此时可以基于(点击类,(2,3)),确定设备界面图1对应的目标弹窗处理方式。设备界面图2的弹窗识别结果为(输入类,(8,2),0.6),由于该识别结果中的弹窗识别置信度低于置信度阈值,因而确定该弹窗识别结果的识别准确度较低,有可能识别错误,此时不对设备界面图2进行弹窗处理,即无需基于(点击类,(2,3)),确定设备界面图2对应的目标弹窗处理方式。
138.另一种可能的实现方式中,将一个设备界面图输入目标识别模型中,目标识别模型的概率分析层可以对该设备界面图的各个区域进行图像分析,确定每个区域为弹窗区域的概率,然后可以对每个区域进行分析,输出多个弹窗识别结果,每个弹窗识别结果中包括识别正确的弹窗识别置信度,且各个弹窗识别结果的弹窗识别置信度和为1。后续,可以将得到的各个弹窗识别结果中的弹窗识别置信度和置信度阈值进行比较,确定是否存在弹窗识别置信度大于置信度阈值的弹窗识别结果,若存在,则可以基于弹窗识别置信度大于置信度阈值的弹窗识别结果,自动对弹窗进行处理。若不存在,则说明目标弹窗识别模型输出的各个弹窗识别结果的准确度均较差,即输出的各个弹窗识别结果可能都不是真实弹窗的信息,因而此时可以不对弹窗进行处理,即不执行根据弹窗识别结果,确定设备界面图对应的目标弹窗处理方式的操作,从而避免无用操作耗费资源。
139.示例的,假设置信度阈值为0.75,设备界面图1的弹窗识别结果为:识别结果1(点击类,(2,3),0.85),识别结果2(点击类,(7,2),0.10),识别结果3(点击类,(5,9),0.05)。由于识别结果1中的弹窗识别置信度大于置信度阈值,因而后续可以基于(点击类,(2,3))自动对弹窗进行处理,即此时可以基于(点击类,(2,3)),确定设备界面图1对应的目标弹窗处理方式。
140.又一示例,假设置信度阈值为0.75,设备界面图2的弹窗识别结果为:识别结果4(输入类,(1,4),0.45),识别结果5(输入类,(2,5),0.30),识别结果6(输入类,(8,3),0.25)。由于识别结果1

3中的弹窗识别置信度均小于置信度阈值,因而说明目标弹窗识别模型输出的各个弹窗识别结果的准确度均较差,不对弹窗进行处理。
141.本技术实施例中可以基于弹窗识别置信度对得到的各个弹窗识别结果进行一次过滤,筛除弹窗识别置信度较低的弹窗识别结果,减少弹窗处理过程中的误操作,从而提高自动化兼容性测试的准确度。
142.本实施例一个可选的实施方式中,在应用目标弹窗识别模型对设备界面图进行识别的过程中,还可以基于识别失败的设备界面图,继续对目标弹窗识别模型进行训练,也即根据所述弹窗识别结果中包括的弹窗类型和处理控件位置坐标,确定设备界面图中是否存在弹窗之后,还包括:
143.在确定出所述设备界面图中不存在弹窗,或者所述弹窗识别置信度不大于置信度
阈值的情况下,获取所述设备界面图的弹窗标注;
144.若所述弹窗标注为存在弹窗,则基于所述设备界面图继续对所述目标弹窗识别模型进行训练。
145.具体的,设备界面图的弹窗标注是人工针对该设备界面图标注的标签,用于指示该设备界面图中是否存在弹窗。
146.需要说明的是,在基于目标弹窗识别模型确定出设备界面图中不存在弹窗,或者弹窗识别置信度不大于置信度阈值的情况下,说明目标弹窗识别模型不能识别到输入的设备界面图中的弹窗,此时可以获取该设备界面图的弹窗标注,进一步确定该设备界面图中是否确实不存在弹窗,还是目标弹窗识别模型无法识别出该设备界面图中的弹窗,即识别失败。
147.实际应用中,若弹窗标注为不存在弹窗,则说明设备界面图中原本就不存在弹窗,因而目标弹窗识别模型未识别出存在弹窗是正常的,即此时可以确定该设备界面图识别成功。若弹窗标注为存在弹窗,则说明设备界面图中原本是存在弹窗的,但是目标弹窗识别模型并未正确识别出存在弹窗,此时可以确定该设备界面图识别失败。
148.本技术实施例中在确定出设备界面图识别失败的情况下,可以采集识别失败的设备界面图,从而对该目标弹窗识别模型继续进行训练,可以不断提高和强化目标识别模型的准确度,从而提高后续弹窗处理的准确度。
149.步骤208:根据所述弹窗识别结果,采用所述目标弹窗处理方式,对所述设备界面图中的弹窗进行处理。
150.需要说明的是,可以基于弹窗识别结果中包括的弹窗类型,确定出目标弹窗处理方式,也即可以基于弹窗识别结果中包括的弹窗类型确定出该弹窗需要用什么方式进行处理。并且,弹窗识别结果中还可以包括有识别到的处理控件位置坐标,因而可以找到对应的待处理设备,然后确定出识别到的处理控件位置坐标在该设备界面中的位置,采用确定出的目标弹窗处理方式,实现自动对弹窗进行处理。
151.本实施例一个可选的实施方式中,所述设备界面图携带设备地址,所述弹窗识别结果包括处理控件位置坐标;此时根据所述弹窗识别结果,采用所述目标弹窗处理方式,对所述设备界面图中的弹窗进行处理,具体实现过程可以如下:
152.采用所述目标弹窗处理方式,对所述设备地址指示的设备中设备界面图的待处理位置处进行处理,所述待处理位置为所述设备界面图中所述处理控件位置坐标指示的位置。
153.需要说明的是,弹窗处理工具在获得至少一个待处理设备的设备界面图时,还可以获得设备界面图的设备地址。对于弹窗处理工具被动接收自动化测试服务发送的至少一个待处理设备的设备界面图的情况,自动化测试服务在获取至少一个待处理设备的设备界面图时,同时获取图片的来源地址,并将该来源地址作为设备地址携带在设备界面图中推送给弹窗处理工具。对于弹窗处理工具主动通过多线程并发获取至少一个待处理设备的设备界面图的情况,弹窗处理工具可以在获取至少一个待处理设备的设备界面图时,同时获取图片的来源地址,并将该来源地址作为设备地址,与设备界面图对应存储。
154.实际应用中,在将设备界面图输入目标弹窗识别模型中,得到对应的弹窗识别结果后,可以基于弹窗识别结果中包括的弹窗类型,确定出该设备界面图中的弹窗应该以什
么方式进行处理,即目标弹窗处理方式。然后,可以基于设备界面图携带的设备地址,找到对应的目标设备,并根据弹窗识别结果中包括的处理控件位置坐标,找到需要处理的弹窗的待操作控件在该目标设备的设备界面中的位置,采用确定出的处理方式,对该位置处的待操作控件执行相应处理操作,从而实现自动处理设备界面中显示的弹窗。
155.沿用上例,设备界面图1携带的设备地址可以为1.1.1.1,设备界面图1输入目标弹窗识别模型中,输出的弹窗识别结果为(点击类,(2,3))。此时,可以基于1.1.1.1找到对应的目标设备,然后找到该目标设备的设备界面中坐标(2,3)的位置处,在该位置处执行一个点击操作,从而实现自动对目标设备的设备界面中的弹窗进行处理。
156.需要说明的是,本技术实施例中,是预先通过机器学习的算法,训练得到可以准确识别弹窗的目标弹窗识别模型,后续基于该目标弹窗识别模型可以识别各种不同样式的弹窗,得到对应的弹窗类型和处理控件位置坐标。因而,对于一些异常弹窗,基于目标弹窗识别模型依旧可以识别出该异常弹窗对应的弹窗类型(基于处理方式划分的类型)和处理控件位置坐标,从而自动对异常弹窗进行处理。如此,本技术实施例中可以基于目标弹窗识别模型自动识别、处理待处理设备的设备界面中的弹窗,能够适配于各种不同的设备,也能够适配各种不同样式的弹窗,如授权弹窗、验证弹窗、异常弹窗等,均可识别出相应的弹窗类型和处理控件位置坐标,自动进行处理。
157.示例的,图3示出了根据本技术一实施例提供的一种弹窗处理方法的架构图,如图3所示,弹窗处理工具可以批量获取大量待处理设备的设备界面图,然后弹窗处理工具可以基于训练好的目标弹窗识别模型,预测弹窗类型和处理控件位置坐标,并基于识别结果,自动处理弹窗。另外,还可以基于识别失败的设备界面图,继续对目标弹窗识别模型进行训练。
158.本技术提供的弹窗处理方法,弹窗处理工具可以通过训练好的目标弹窗识别模型自动对设备界面图进行识别,然后基于弹窗识别结果自动采用相应的处理方式对该设备界面图中的弹窗进行处理,由于训练得到的目标弹窗识别模型可以适配不同分辨率、不同品牌、不同型号的电子设备,且弹窗识别的准确率较高,因而无需测试人员一一适配不同的电子设备,也无需来回点击处理弹窗,减少了测试人员频繁处理批量兼容性测试任务过程中的弹窗所花费的时间,避免了测试人员在自动化测试过程中因弹窗问题导致测试失败,减少了测试过程中的漏处理情况。
159.如此,针对大批量待处理设备的测试过程中需要手动处理各式各样的授权弹窗、验证弹窗、异常弹窗等情况,本技术实施例中可以通过深度学习,对各种设备型号的弹窗图片进行学习,从而训练得到识别准确度较高的目标弹窗识别模型,用于测试过程中弹窗的识别,测试人员无需关注不同型号设备的弹窗样式,可以在不影响待处理设备本身性能的情况下,高效、准确地完成各种授权弹窗、验证弹窗、异常弹窗的自动化处理,并且还能支持单设备和多设备同时并发处理,解决了测试效率低下的问题,大大提高了兼容性测试的稳定性、效率和准确性,提升测试人员测试效率。
160.图4示出了根据本技术一实施例提供的一种被动弹窗处理方法的流程图,应用于执行兼容性测试任务的终端或服务端,具体包括以下步骤:
161.步骤402:安装python3.4+以上的程序环境,解压弹窗处理工具的安装包,并安装必须的依赖库,使其可以在操作系统下运行并被调用。
162.其中,python是一种计算机程序设计语言,提供了高效的高级数据结构,还能简单有效地面向对象编程。
163.步骤404:通过yolo机器学习算法对获得的所有已知设备界面图进行训练和学习,得到i个弹窗识别模型。
164.步骤406:遍历每个弹窗识别模型,确定其预测准确度,并基于每个弹窗识别模型的预测准确度,从中筛选出准确度最高的目标弹窗识别模型。
165.步骤408:基于训练、筛选出的目标弹窗识别模型,创建支持高并发的异步服务接口。
166.步骤410:通过该异步服务接口接收自动化测试服务发送的至少一个待处理设备的设备界面图,所述设备界面图为所述自动化测试服务从所述至少一个待处理设备中获取到的界面截图,所述设备界面图中携带设备地址。
167.步骤412:将接收到的每个设备界面图输入目标弹窗识别模型中,得到所述设备界面图对应的弹窗类型和处理控件位置坐标,并根据该弹窗类型,确定该设备界面图对应的目标弹窗处理方式,然后采用目标弹窗处理方式,对该设备界面图携带的设备地址指示的设备中处理控件位置坐标进行处理。
168.本技术提供的弹窗处理方法,弹窗处理工具可以通过训练好的目标弹窗识别模型自动对设备界面图进行识别,然后基于弹窗识别结果自动采用相应的处理方式对该设备界面图中的弹窗进行处理,由于训练得到的目标弹窗识别模型可以适配不同分辨率、不同品牌、不同型号的电子设备,且弹窗识别的准确率较高,因而无需测试人员一一适配不同的电子设备,也无需来回点击处理弹窗,减少了测试人员频繁处理批量兼容性测试任务过程中的弹窗所花费的时间,避免了测试人员在自动化测试过程中因弹窗问题导致测试失败,减少了测试过程中的漏处理情况。
169.如此,针对大批量待处理设备的测试过程中需要手动处理各式各样的授权弹窗、验证弹窗、异常弹窗等情况,本技术实施例中可以通过深度学习,对各种设备型号的弹窗图片进行学习,从而训练得到识别准确度较高的目标弹窗识别模型,用于测试过程中弹窗的识别,测试人员无需关注不同型号设备的弹窗样式,可以在不影响待处理设备本身性能的情况下,高效、准确地完成各种授权弹窗、验证弹窗、异常弹窗的自动化处理,并且还能支持单设备和多设备同时并发处理,解决了测试效率低下的问题,大大提高了兼容性测试的稳定性、效率和准确性,提升测试人员测试效率。
170.图5示出了根据本技术一实施例提供的一种主动弹窗处理方法的流程图,应用于执行兼容性测试任务的终端或服务端,具体包括以下步骤:
171.步骤502:安装python3.4+以上的程序环境,解压弹窗处理工具的安装包,并安装必须的依赖库,使其可以在操作系统下运行并被调用。
172.步骤504:通过yolo机器学习算法对获得的所有已知设备界面图进行训练和学习,得到i个弹窗识别模型。
173.步骤506:遍历每个弹窗识别模型,确定其预测准确度,并基于每个弹窗识别模型的预测准确度,从中筛选出准确度最高的目标弹窗识别模型。
174.步骤508:启动弹窗处理工具,该弹窗处理工具可以主动通过多线程从至少一个待处理设备中获取界面截图,将获取到的各个界面截图确定为至少一个待处理的设备界面
图,所述设备界面图中携带设备地址。
175.实际应用过程中,弹窗处理工具可以通过adb和多线程自动、批量对至少一个待处理进行截屏,从而获得该至少一个待处理的设备界面图。其中,adb,中文名安卓调试桥,它是一种功能多样的命令行工具,可用于执行各种设备操作(例如安装和调试应用),并提供对unix shell(可用来在设备上运行各种命令)的访问权限。
176.步骤510:通过多线程将接收到的各个设备界面图输入目标弹窗识别模型中,得到各个设备界面图对应的弹窗类型和处理控件位置坐标,并根据弹窗类型,确定设备界面图对应的目标弹窗处理方式,然后采用目标弹窗处理方式,对设备界面图携带的设备地址指示的设备中处理控件位置坐标进行处理。
177.需要说明的是,弹窗处理工具配合目标弹窗识别模型,使用多线程快速过滤每一张设备界面图,针对有弹窗的设备截面图可以识别得到弹窗类型和处理控件位置坐标,从而进行实时弹窗处理,处理完成后通过循环机制,进行下一轮检测和处理。
178.本技术提供的弹窗处理方法,弹窗处理工具可以通过训练好的目标弹窗识别模型自动对设备界面图进行识别,然后基于弹窗识别结果自动采用相应的处理方式对该设备界面图中的弹窗进行处理,由于训练得到的目标弹窗识别模型可以适配不同分辨率、不同品牌、不同型号的电子设备,且弹窗识别的准确率较高,因而无需测试人员一一适配不同的电子设备,也无需来回点击处理弹窗,减少了测试人员频繁处理批量兼容性测试任务过程中的弹窗所花费的时间,避免了测试人员在自动化测试过程中因弹窗问题导致测试失败,减少了测试过程中的漏处理情况。
179.如此,针对大批量待处理设备的测试过程中需要手动处理各式各样的授权弹窗、验证弹窗、异常弹窗等情况,本技术实施例中可以通过深度学习,对各种设备型号的弹窗图片进行学习,从而训练得到识别准确度较高的目标弹窗识别模型,用于测试过程中弹窗的识别,测试人员无需关注不同型号设备的弹窗样式,可以在不影响待处理设备本身性能的情况下,高效、准确地完成各种授权弹窗、验证弹窗、异常弹窗的自动化处理,并且还能支持单设备和多设备同时并发处理,解决了测试效率低下的问题,大大提高了兼容性测试的稳定性、效率和准确性,提升测试人员测试效率。
180.与上述方法实施例相对应,本技术还提供了弹窗处理装置实施例,图6示出了本技术一实施例提供的一种弹窗处理装置的结构示意图。如图6所示,该装置包括:
181.获得模块602,被配置为获得至少一个待处理设备的设备界面图;
182.输入模块604,被配置为将所述设备界面图输入目标弹窗识别模型中,得到所述设备界面图对应的弹窗识别结果,所述目标弹窗识别模型通过上述图1所示的弹窗识别模型的训练方法训练得到;
183.第一确定模块606,被配置为根据所述弹窗识别结果,确定所述设备界面图对应的目标弹窗处理方式;
184.处理模块608,被配置为根据所述弹窗识别结果,采用所述目标弹窗处理方式,对所述设备界面图中的弹窗进行处理。
185.可选地,所述弹窗识别结果包括弹窗类型和处理控件位置坐标;所述装置还包括第二确定模块,被配置为:
186.根据所述弹窗识别结果中包括的弹窗类型和处理控件位置坐标,确定设备界面图
中是否存在弹窗;
187.在确定出所述设备界面图中存在弹窗的情况下,执行所述第二确定模块606。
188.可选地,所述弹窗识别结果还包括弹窗识别置信度;第二确定模块进一步被配置为:
189.在确定出所述设备界面图中存在弹窗的情况下,确定所述弹窗识别置信度是否大于置信度阈值;
190.若所述弹窗识别置信度大于置信度阈值,则执行所述第二确定模块606。
191.可选地,第二确定模块进一步被配置为:
192.确定所述弹窗类型和处理控件位置坐标是否为预设异常字符;
193.若是,则确定所述设备界面图中不存在弹窗;
194.若否,则确定所述设备界面图中存在弹窗。
195.可选地,所述弹窗识别结果包括弹窗类型和处理控件位置坐标;第一确定模块606进一步被配置为:
196.根据所述弹窗识别结果中的弹窗类型,在预先存储的弹窗类型和处理方式之间的对应关系中查找,确定所述弹窗识别结果中的弹窗类型对应的处理方式;
197.将所述弹窗识别结果中的弹窗类型对应的处理方式,确定为所述设备界面图对应的目标弹窗处理方式。
198.可选地,获得模块602进一步被配置为:
199.接收自动化测试服务发送的至少一个待处理设备的设备界面图,所述设备界面图为所述自动化测试服务从所述至少一个待处理设备中获取到的界面截图;或者,
200.通过多线程从所述至少一个待处理设备中获取界面截图,将获取到的各个界面截图确定为所述至少一个待处理设备的设备界面图。
201.可选地,所述设备界面图携带设备地址,所述弹窗识别结果包括处理控件位置坐标;处理模块608进一步被配置为:
202.采用所述目标弹窗处理方式,对所述设备地址指示的设备中设备界面图的待处理位置处进行处理,所述待处理位置为所述设备界面图中所述处理控件位置坐标指示的位置。
203.可选地,所述装置还包括第一训练模块,被配置为:
204.获取至少两个样本设备的第i组样本图片,所述第i组样本图片中包括不同样本设备的样本图片,所述i等于1;
205.根据所述第i组样本图片,对初始识别模型进行训练,得到第i个弹窗识别模型;
206.令i自增1,返回执行所述获取至少两个样本设备的第i组样本图片的操作步骤,直至所述i满足预设条件,得到i个弹窗识别模型;
207.基于预测图片集,确定所述i个弹窗识别模型中每个弹窗识别模型的预测准确度,并基于所述预测准确度筛选出目标弹窗识别模型。
208.可选地,所述第i组样本图片中每个样本图片携带有第一样本弹窗类型和第一样本处理控件位置坐标;第一训练模块进一步被配置为:
209.将所述第i组样本图片中的第j个样本图片输入所述初始识别模型中,得到所述第j个样本图片对应的第一预测弹窗类型和第一预测处理控件位置坐标,所述j等于1;
210.基于所述第j个样本图片携带的第一样本弹窗类型和第一样本处理控件位置坐标,以及所述第一预测弹窗类型和第一预测处理控件位置坐标,确定所述初始识别模型的损失值;
211.基于所述损失值调整所述初始识别模型的参数,对所述初始识别模型进行训练,令j自增1,返回执行所述将所述第i组样本图片中的第j个样本图片输入所述初始识别模型中的操作步骤,直至所述j等于所述第i组样本图片中包括的样本图片的个数,得到所述第i个弹窗识别模型。
212.可选地,所述预设条件,包括:
213.训练得到的第i个弹窗识别模型与第i

1个弹窗识别模型的损失值差值小于差值阈值。
214.可选地,所述预测图片集携带第二样本弹窗类型和第二样本处理控件位置坐标;所述第一训练模块进一步被配置为:
215.针对所述i个弹窗识别模型中的每个弹窗识别模型,将所述预测图片集中的各个预测图片输入所述弹窗识别模型,得到所述各个预测图片对应的第二预测弹窗类型和第二预测处理控件位置坐标;
216.基于所述各个预测图片携带的第二样本弹窗类型和第二样本处理控件位置坐标,以及所述第二预测弹窗类型和第二预测处理控件位置坐标,确定所述弹窗识别模型的预测准确度;
217.将所述i个弹窗识别模型中预测准确度最高的弹窗识别模型确定为筛选出的目标弹窗识别模型。
218.可选地,所述装置还包括第二训练模块,被配置为:
219.在确定出所述设备界面图中不存在弹窗,或者所述弹窗识别置信度不大于置信度阈值的情况下,获取所述设备界面图的弹窗标注;
220.若所述弹窗标注为存在弹窗,则基于所述设备界面图继续对所述目标弹窗识别模型进行训练。
221.本技术提供的弹窗处理装置,弹窗处理工具可以通过训练好的目标弹窗识别模型自动对设备界面图进行识别,然后基于弹窗识别结果自动采用相应的处理方式对该设备界面图中的弹窗进行处理,由于训练得到的目标弹窗识别模型可以适配不同分辨率、不同品牌、不同型号的电子设备,且弹窗识别的准确率较高,因而无需测试人员一一适配不同的电子设备,也无需来回点击处理弹窗,减少了测试人员频繁处理批量兼容性测试任务过程中的弹窗所花费的时间,避免了测试人员在自动化测试过程中因弹窗问题导致测试失败,减少了测试过程中的漏处理情况。
222.如此,针对大批量待处理设备的测试过程中需要手动处理各式各样的授权弹窗、验证弹窗、异常弹窗等情况,本技术实施例中可以通过深度学习,对各种设备型号的弹窗图片进行学习,从而训练得到识别准确度较高的目标弹窗识别模型,用于测试过程中弹窗的识别,测试人员无需关注不同型号设备的弹窗样式,可以在不影响待处理设备本身性能的情况下,高效、准确地完成各种授权弹窗、验证弹窗、异常弹窗的自动化处理,并且还能支持单设备和多设备同时并发处理,解决了测试效率低下的问题,大大提高了兼容性测试的稳定性、效率和准确性,提升测试人员测试效率。
223.上述为本实施例的一种弹窗处理装置的示意性方案。需要说明的是,该弹窗处理装置的技术方案与上述的弹窗处理方法的技术方案属于同一构思,弹窗处理装置的技术方案未详细描述的细节内容,均可以参见上述弹窗处理方法的技术方案的描述。
224.图7示出了根据本技术一实施例提供的一种计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
225.计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi

max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
226.在本技术的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本技术范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
227.计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
228.其中,处理器720用于执行如下计算机可执行指令,以实现上述弹窗处理方法的操作步骤。
229.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的弹窗处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述弹窗处理方法的技术方案的描述。
230.本技术一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时以用于实现上述弹窗处理方法的操作步骤。
231.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的弹窗处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述弹窗处理方法的技术方案的描述。
232.上述对本技术特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
233.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储
器、只读存储器(rom,read

only memory)、随机存取存储器(ram,randomaccess memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
234.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本技术所必须的。
235.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
236.以上公开的本技术优选实施例只是用于帮助阐述本技术。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本技术的内容,可作很多的修改和变化。本技术选取并具体描述这些实施例,是为了更好地解释本技术的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本技术。本技术仅受权利要求书及其全部范围和等效物的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1