一种移动端用户界面动态元素定位方法及系统技术方案

技术编号:31748416 阅读:26 留言:0更新日期:2022-01-05 16:28
本发明专利技术实施例提供一种移动端用户界面动态元素定位方法,包括:截取满足预设数量的移动端用户界面的显示图像,作为训练图像;将所述训练图像中各动态元素与类型名称的对应关系输入到YOLOV5算法模型;通过所述训练图像对所述YOLOV5算法模型进行模型训练,并得到最终模型;通过所述最终模型对待测试的移动端用户界面中的各动态元素进行定位,所述定位是指识别出图像中的各动态元素的类型名称、以及确定各动态元素在图像中的位置。通过该方法,即使测试页面中动态元素的属性发生了变化,不需要维护更新也能够快速的进行元素的定位。维护更新也能够快速的进行元素的定位。维护更新也能够快速的进行元素的定位。

【技术实现步骤摘要】
一种移动端用户界面动态元素定位方法及系统


[0001]本专利技术涉及移动终端测试
,具体涉及一种移动端用户界面动态元素定位方法及系统。

技术介绍

[0002]在用户界面(UI)自动化测试中,需要定位到元素后才能进行输入、点击、滑动等后续自动化测试操作。用户界面是由多个元素对象组成,元素内容不固定且相对位置有一定规律的称为动态元素,比如微博头像就是动态元素,一般位于一条博文的左上角,且不同头像的图片内容完全不同;元素内容固定的成为静态元素。通过元素对象的name、label、value等属性查找元素的过程就是元素定位。
[0003]现有技术在UI自动化测试过程中用于元素定位的方法有两种:
[0004]1、采用WebDriverAgent(一种iOS移动测试框架)进行用户界面的元素的定位,该工具可以通过WEB页面解析iOS设备界面元素,其中手机屏幕截图、界面元素树和单个元素的属性信息(名称、位置坐标等)三者对照展示。在获取元素属性后,通过WebDriverAgent提供的函数接口定位元素。
[0005]2、采用UIAutomator(一种Android测试框架)其中包含Android端界面元素解析的工具uiautomatorviewer.bat,该工具能够将Android手机屏幕截图、界面元素树和单个元素的属性信息(id、class、text、位置坐标等)三者对照展示。在获取元素属性后通过UIAutomator提供的函数接口定位元素。
[0006]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0007]无论是采用WebDriverAgent对iOS移动终端进行测试,还是采用UIAutomator对Android移动终端进行测试,均是通过元素对象的属性来定位目标元素。对于其中的动态元素,在元素渲染效果不变而上述属性发生变化后,自动化定位代码就会执行失败,被迫维护更新,从而增加了维护成本。因此,如何在属性变化后不需要维护更新就能快速定位动态元素,是需要解决的问题。

技术实现思路

[0008]本专利技术实施例提供一种移动端用户界面动态元素定位方法及系统,用以解决现有技术中动态元素属性发生变化后,若不维护更新就无法自动定位的问题。
[0009]为达上述目的,一方面,本专利技术实施例提供一种移动端用户界面动态元素定位方法,包括:
[0010]截取满足预设数量的移动端用户界面的显示图像,作为训练图像;
[0011]将所述训练图像中各动态元素与类型名称的对应关系输入到YOLOV5算法模型;
[0012]通过所述训练图像对所述YOLOV5算法模型进行模型训练,并得到最终模型;
[0013]通过所述最终模型对待测试的移动端用户界面中的各动态元素进行定位,所述定位是指识别出图像中的各动态元素的类别名称、以及确定各动态元素在图像中的位置。
[0014]另一方面,本专利技术实施例提供一种移动端用户界面动态元素定位系统,包括:
[0015]训练图像获取单元,用于截取满足预设数量的移动端用户界面的显示图像,作为训练图像;
[0016]关联建立单元,用于将所述训练图像中各动态元素与类型名称的对应关系输入到YOLOV5算法模型;
[0017]模型训练单元,用于通过所述训练图像对所述YOLOV5算法模型进行模型训练,并得到最终模型;
[0018]定位单元,用于通过所述最终模型对待测试的移动端用户界面中的各动态元素进行定位,所述定位是指识别出图像中的各动态元素的类别名称、以及确定各动态元素在图像中的位置。
[0019]上述技术方案具有如下有益效果:
[0020]本技术方案采用YOLOV5算法模型对训练图像进行训练,预先确定出移动端用户界面中的各动态元素的相对位置关系;在元素渲染结果不变而动态元素属性发生变化时,通过YOLOV5最终模型对待测试的用户界面图像进行识别,根据训练阶段确定的相对位置关系来对待测试图像中的动态元素进行定位,无需代码维护更新,从而降低了维护成本。
[0021]此外,本专利技术还具有以下特点:
[0022]现有技术进行移动端测试时,WebDriverAgent只能用于iOS端,UIAutomator只能用于Android端,因使用不同的测试框架维护两套元素定位代码,其维护成本很高。而采用本技术方案后,可同时适用于Android端和iOS端的动态元素定位,仅需维护一套代码即可,大幅降低了成本。
附图说明
[0023]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0024]图1是本专利技术实施例一种移动端用户界面动态元素定位方法的流程图;
[0025]图2是本专利技术实施例一种移动端用户界面动态元素定位方法的构成框架图;
[0026]图3是本专利技术的具体实例中的一张训练图像示例;
[0027]图4是图3中动态元素遮盖黑色矩形色块后的图像;
[0028]图5是本专利技术的具体实例中的坐标比率数据表示例;
[0029]图6是本专利技术的具体实例中的一张测试图像示例;
[0030]图7是图6中动态元素遮盖黑色矩形色块后的图像;
[0031]图8是本专利技术具体实例中YOLOV5最终模型输出结果示例。
具体实施方式
[0032]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本专利技术保护的范围。
[0033]如图1所示,本专利技术实施例提供一种移动端用户界面动态元素定位方法,包括:
[0034]S101、截取满足预设数量的移动端用户界面的显示图像,作为训练图像;
[0035]S102、将所述训练图像中各动态元素与类型名称的对应关系输入到YOLOV5算法模型;
[0036]S103、通过所述训练图像对所述YOLOV5算法模型进行模型训练,并得到最终模型;
[0037]采用YOLOV5算法模型对训练图像进行训练,可以预先确定出移动端用户界面中的各动态元素的相对位置关系,所述最终模型能够描述用户界面中各动态元素的相对位置关系,后续可以根据最终模型中描述的相对位置关系对待测试的移动端用户界面中的各动态元素进行定位;
[0038]S104、通过所述最终模型对待测试的移动端用户界面中的各动态元素进行定位,所述定位是指识别出图像中的各动态元素的类别名称、以及确定各动态元素在图像中的位置。
[0039]现有技术存在的问题在于,移动端用户界面中,有大量的动态元素(例如头像、昵称等),在测试过程中,每本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种移动端用户界面动态元素定位方法,其特征在于,包括:截取满足预设数量的移动端用户界面的显示图像,作为训练图像;将所述训练图像中各动态元素与类型名称的对应关系输入到YOLOV5算法模型;通过所述训练图像对所述YOLOV5算法模型进行模型训练,并得到最终模型;通过所述最终模型对待测试的移动端用户界面中的各动态元素进行定位,所述定位是指识别出图像中的各动态元素的类型名称、以及确定各动态元素在图像中的位置。2.如权利要求1所述的移动端用户界面动态元素定位方法,其特征在于,所述通过训练图像对所述YOLOV5算法模型进行模型训练,并得到最终模型,包括:将所述训练图像中各动态元素分别用黑色矩形色块遮盖;将所述被黑色矩形色块遮盖的训练图像输入到所述YOLOV5算法模型,进行模型训练;当模型训练的召回率和正确率均达到预设值时,导出最终模型。3.如权利要求1或2所述的移动端用户界面动态元素定位方法,其特征在于,所述通过最终模型对移动端用户界面中的动态元素进行定位,包括:从待测试的移动端用户界面截取当前图像,作为测试图像;通过所述最终模型对所述测试图像中各动态元素进行定位。4.如权利要求3所述的移动端用户界面动态元素定位方法,其特征在于,所述通过最终模型对所述测试图像中各动态元素进行定位,包括:将所述测试图像中的各动态元素用黑色矩形色块遮盖;将所述被黑色矩形色块遮盖的测试图像输入到所述最终模型;对所述测试图像中的每一个动态元素分别进行定位。5.如权利要求1所述的移动端用户界面动态元素定位方法,其特征在于,在将所述训练图像中各动态元素与类型名称的对应关系输入到YOLOV5算法模型之前,还包括:为所述训练图像中的各动态元素指定类...

【专利技术属性】
技术研发人员:鲍红磊
申请(专利权)人:微梦创科网络科技中国有限公司
类型:发明
国别省市:

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

1