首页> 中国专利> 一种基于滑动窗口和控件信息的移动应用控件采样方法

一种基于滑动窗口和控件信息的移动应用控件采样方法

摘要

本发明公开了一种基于滑动窗口和控件信息的移动应用控件采样方法,分别通过手机操作系统本身的功能特性和外部的计算机视觉手段来获取移动应用控件的结构信息,使用滑动窗口的方法从控件信息的时序流中挖掘相似的模式,以此达到对控件进行采样的目的,后续对页面的控件进行点击遍历时,将跳过高相似度的控件组。对于安卓系统,本发明利用其系统级的无障碍服务和talkback功能获取每个控件的位置、大小、控件标签类型、文本等;对于iOS系统,本发明利用计算机视觉技术对iOS系统自带的VoiceOver功能产生的聚焦框和辅助文本进行识别,从而得到被聚焦控件的大小、位置、文本信息。

著录项

  • 公开/公告号CN114840417A

    专利类型发明专利

  • 公开/公告日2022-08-02

    原文格式PDF

  • 申请/专利权人 浙江大学;

    申请/专利号CN202210369205.1

  • 申请日2022-04-08

  • 分类号G06F11/36(2006.01);G06V30/414(2022.01);G06F3/04847(2022.01);

  • 代理机构杭州求是专利事务所有限公司 33200;

  • 代理人邱启旺

  • 地址 310058 浙江省杭州市西湖区余杭塘路866号

  • 入库时间 2023-06-19 16:14:25

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-08-19

    实质审查的生效 IPC(主分类):G06F11/36 专利申请号:2022103692051 申请日:20220408

    实质审查的生效

  • 2022-08-02

    公开

    发明专利申请公布

说明书

技术领域

本发明属于移动应用自动化检测领域,尤其涉及一种基于滑动窗口和控件信息的移动应用控件采样方法。

背景技术

随着互联网的迅猛发展,各种各样的网页和移动端应用的数量爆发式增长。巨大的用户群体和各种各样的移动应用,也对移动应用自动化检测领域发起新的挑战。

目前,有较多的对移动应用进行自动化遍历的方法,它们设计了基于广度优先搜索或深度有线搜索的策略,有的预先的对先源码分析得出页面关系,有的基于页面之间的拓扑关系和页面相似度进行剪枝,但是在控件的采样方法方面却十分欠缺。

发明内容

本发明的目的在于针对现有技术的不足,提供一种基于滑动窗口和控件信息的移动应用控件采样方法。

本发明的目的是通过以下技术方案来实现的:一种基于滑动窗口和控件信息的移动应用控件采样方法,包括以下步骤:

S1:开启手机操作系统自带的屏幕阅读器,开启后通过设备控制模块使得移动应用页面上的控件先后被聚焦;

S2:移动应用页面上的控件被聚焦时,获取当前被聚焦的控件信息;

S3:将收集到控件信息发送给采样处理模块,采样处理模块将收到的控件信息按时间加入到时序队列中,设备控制模块将使得移动应用页面上的下一个控件被聚焦,直到页面上所有的控件都被聚焦过或者达到最大的聚焦控件数或者达到其他停止条件;

S4:采样处理模块将以递增的窗口大小扫描控件信息的时序队列,记录下高度相似的窗口,窗口所包含的控件将被标记为“丢弃”;

S5:当整个页面的控件遍历完成或达到最大的聚焦控件数或者达到其他停止条件时,分别点击之前未被标记为“丢弃”的控件,至此移动应用页面的控件采样完成。

进一步地,步骤S1中,针对Android,屏幕阅读器选用Talkback,设备控制模块利用系统的无障碍服务;针对iOS,屏幕阅读器选用VoiceOver,设备控制模块选用模拟蓝牙键盘控制;设备控制模块能够实现的控制包括聚焦上/下一个控件、返回、点击进入控件。

进一步地,步骤S2包括:

S21:对于Android移动应用,通过系统的无障碍服务获取当前被聚焦的控件信息,包括位置、大小、控件标签类型、文本;

S22:对于iOS移动应用,对当前手机画面截图并利用计算机视觉的技术手段获取当前被聚焦的控件信息,包括位置、大小、文本。

进一步地,步骤S22中,利用计算机视觉算法识别iOS移动应用聚焦控件信息,包括:

先在iOS的“辅助功能→显示与文字大小”中开启“智能反转”、“降低白点值”、“增强对比度”、“降低透明度”,并且在“辅助功能→旁白”中开启“大光标”,以此增强聚焦框的识别效果;在“辅助功能→旁白”中开启“字幕面板”,以此来显示控件的辅助文本;截取手机画面后,利用计算机视觉算法分别识别出聚焦框的位置、大小和辅助文本内容。

进一步地,步骤S4包括:

先将第一个控件设为“丢弃”,设置初始窗口大小;从队尾第一个控件信息开始以当前的窗口大小取“当前窗口”,然后开始从时序队列的队尾的第二个控件信息开始以当前窗口大小取“比较窗口”往前扫描,直到将队首第一个控件信息纳入“比较窗口”;将“当前窗口”内的各个控件信息和“比较窗口”内的各个控件信息依次计算相似度,相似度大于或等于阈值,就认为两个控件是高度相似的;若两个窗口的各个对应的控件信息都是高度相似的,那么认为这两个窗口是高度相似的,将“当前窗口”所包含的控件标记为“丢弃”;其中“当前窗口”和“比较窗口”大小从初始窗口大小开始递增,直到等于预设的最大窗口大小。

进一步地,将标记为“丢弃”的窗口保存起来,优先将“当前窗口”和已标记为“丢弃”的窗口比较。

进一步地,初始窗口大小设置为2。

进一步地,所述计算相似度,包括:

对于两个窗口中顺序对应的控件信息,初始化相似度为0,分别比较两个控件的宽、高、相对窗口中相邻控件的相对位置、辅助文本以及控件标签类型;其中,辅助文本不为空且一致则令相似度加2,辅助文本都为空则令相似度加1;其中,宽、高、相对位置中每有一个一致,则令相似度加1;其中,控件标签类型一致,则令相似度加1;最后若相似度大于或等于阈值,认为控件高度相似;其中,控件标签类型仅针对Android,iOS不考虑。

进一步地,所述相对窗口中相邻控件的相对位置,根据屏幕坐标计算得出,包括上、下、左、右、左上、左下、右上、右下。

一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现如权利要求1-9任一项所述基于滑动窗口和控件信息的移动应用控件采样方法。

本发明的有益效果是:与目前的基于页面之间的拓扑关系和页面相似度剪枝的策略相比,控件采样应当发生在页面剪枝前,可以在不点击控件进入页面的情况下,直接对控件的点击操作进行取舍判断,大大提高了移动应用遍历的效率,在同样的时间内可以遍历更多的有效页面,可以有效避免重复进入类似的页面,对有瀑布流的页面采样后效果更加显著,即大大提高了页面的有效覆盖率。区别于对单个控件之间的相似度比较,本发明能够减少相似控件的误判,比如两个“确定”按钮很可能点击后进入完全不同的页面,而基于窗口大小至少为2的滑动窗口则可以带来控件上下文的信息,减少误采样的情况;区别于基于纯计算机视觉的相似度比较,本发明还基于控件的辅助文本信息和控件空间相对布局信息,能够提高采样的准确度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的整体架构示意图;

图2是本发明的采样算法示意图。

具体实施方法

下面结合附图具体说明本发明的技术方案。

如图1所示,本发明一种基于滑动窗口和控件信息的移动应用控件采样方法,具体步骤如下:

S1:开启手机操作系统自带的屏幕阅读器,开启后通过设备控制模块使得移动应用页面上的控件先后被聚焦。

具体地,屏幕阅读器选用Android的屏幕阅读器为Talkback,或者iOS的屏幕阅读器为VoiceOver;设备控制模块iOS选用模拟蓝牙键盘控制,或者Android利用系统的无障碍服务,能够实现聚焦上/下一个控件、返回、点击进入控件等。

S2:移动应用的页面上的控件被聚焦时,获取当前被聚焦的控件的大小、位置和文本等信息。

S21:对于Android移动应用,通过系统的无障碍服务获取当前被聚焦控件的位置、大小、控件标签类型、文本等信息。

S22:对于iOS移动应用,对当前手机画面截图并利用计算机视觉的技术手段获取当前被聚焦控件的位置、大小、文本等信息。

具体地,利用计算机视觉算法识别iOS移动应用聚焦控件信息的方法,具体为:需要先在iOS的“辅助功能→显示与文字大小”中开启“智能反转”、“降低白点值”、“增强对比度”、“降低透明度”,并且在“辅助功能→旁白”中开启“大光标”,以此增强聚焦框的识别效果;在“辅助功能→旁白”中开启“字幕面板”,以此来显示控件的辅助文本;截取手机画面后,利用计算机视觉算法分别识别出聚焦框的位置、大小和辅助文本内容。

S3:将收集到控件信息发送给采样处理模块,采样处理模块将收到的控件信息按时间加入到时序队列中,设备控制模块将使得移动应用页面上的下一个控件被聚焦,直到页面上所有的控件都被聚焦过或者达到最大的聚焦控件数或者达到其他停止条件。

S4:采样处理模块将以递增的窗口大小扫描控件信息的时序队列,记录下高度相似的窗口,窗口所包含的控件将被标记为“丢弃”。

具体地,如图2所示,采样处理模块的实施步骤如下:先将第一个控件设为“丢弃”,因为实践经验指出第一个控件往往是“返回”按钮,或者是指向当前页面的按钮;设置初始窗口大小为2;从队尾第一个控件信息开始以当前的窗口大小取“当前窗口”,然后开始从时序队列的队尾的第二个控件信息开始以当前窗口大小取“比较窗口”往前扫描,直到将队首第一个控件信息纳入“比较窗口”;将“当前窗口”内的各个控件信息和左边的“比较窗口”内的各个控件信息依次计算相似度,相似度大于或等于阈值,就认为两个控件是高度相似的;若两个窗口的各个对应的控件信息都是高度相似的,那么认为这两个窗口是高度相似的,将“当前窗口”所包含的控件标记为“丢弃”。其中,“当前窗口”和“比较窗口”大小从初始窗口大小开始递增,直到等于预设的最大窗口大小。优选地,可以将标记为“丢弃”的窗口保存起来,优先将“当前窗口”和已标记为“丢弃”的窗口比较,因为在移动应用页面中结构类似的导航控件组或瀑布流控件组通常是紧接着的,缓存“丢弃”窗口有利于提高采样效率。

具体地,计算相似度的实施步骤如下:对于两个窗口中顺序对应的控件信息,初始化相似度为0,分别比较两个控件的宽、高、相对窗口中相邻控件的相对位置(根据获得的屏幕坐标计算得出,分别有“上”、“下”、“左”、“右”、“左上”、“左下”、“右上”、“右下”)、辅助文本以及控件标签类型(仅Android可以通过无障碍服务获取)。其中,辅助文本不为空且一致则令相似度加2,辅助文本都为空则令相似度加1;其中,宽、高、相对位置中每有一个一致,则令相似度加1;其中,控件标签类型一致,则令相似度加1。最后若相似度大于或等于阈值4,认为控件高度相似。

S5:当整个页面的控件遍历完成或达到最大的聚焦控件数或者达到其他停止条件时,接下来,将分别点击之前未被标记为“丢弃”的控件,至此移动应用页面的控件采样完成。

本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的基于滑动窗口和控件信息的移动应用控件采样方法。

所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。

本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号