(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210991441.7
(22)申请日 2022.08.18
(71)申请人 中国科学院软件研究所
地址 100190 北京市海淀区中关村南四街 4
号
(72)发明人 苏宇辉 王俊杰 刘哲 王丹丹
李守斌 王青
(74)专利代理 机构 北京君尚知识产权代理有限
公司 11200
专利代理师 司立彬
(51)Int.Cl.
G06F 11/36(2006.01)
G06F 8/61(2018.01)
G06F 8/38(2018.01)
G06V 10/28(2022.01)G06V 10/44(2022.01)
G06V 10/764(2022.01)
G06V 20/60(2022.01)
G06V 20/62(2022.01)
G06V 30/162(2022.01)
G06V 30/18(2022.01)
G06V 30/19(2022.01)
(54)发明名称
一种针对移动应用的界面缩放缺陷检测方
法及电子装置
(57)摘要
本发明公开了一种针对移动应用的界面缩
放缺陷检测方法及电子装置。 本方法为: 1)将一
目标移动应用的用户界面 以不同缩放比例进行
缩放, 获取每一缩放比例下的界面; 以界面中的
组件为粒度, 建立在不同缩放比例界面中的同一
组件的对应关系; 2)基于所述对应关系, 进行组
件间分析, 即比较同一组件在不同的缩放比例界
面下组件之间的位置关系, 检测由组件之间的位
置关系的变化引起的缩放缺陷; 3)基于所述对应
关系, 进行组件内分析, 比较并分析组件本身所
显示的内容, 检测由组件内容的不一致引起的缩
放缺陷。 本发明能够更全面且准确地发现问题,
快速且自动化地完成对应用程序的缩放无障碍
测试, 保证移动应用的开发质量。
权利要求书4页 说明书11页 附图1页
CN 115357490 A
2022.11.18
CN 115357490 A
1.一种针对移动应用的界面缩放 缺陷检测方法, 其 步骤包括:
1)将一目标移动应用的用户界面以不同缩放比例进行缩放, 获取每一缩放比例下的界
面; 以界面中的组件为粒度, 建立在不同缩放比例界面中的同一组件的对应关系;
2)基于所述对应关系, 进行组件间分析, 即比较同一组件在不同的缩放比例界面下组
件之间的位置关系, 检测由组件之间的位置关系的变化引起的缩放 缺陷;
3)基于所述对应关系, 进行组件内分析, 比较并分析组件本身所显示的内容, 检测由组
件内容的不 一致引起的缩放 缺陷。
2.根据权利要求1所述的方法, 其特征在于, 建立所述对应关系的方法为: 获取所述目
标移动应用的所有布局文件, 对每一所述布局文件中所包含的组件注入唯一的组件标识
符, 以区分不同种类的组件; 将注入了组件 唯一性标识符的目标移动应用打包成安装包并
安装到进 行不同缩放比例显示的多个智能手机上并操作所述目标移动应用, 到达相同的界
面p; 获得界面p的布局文件和界面p中组件的图像信息, 利用布局文件中的组件标识符和组
件包含的字符串生成对应组件的组件ID, 将具有相同的组件ID的组件作为一个组件对, 建
立不同缩放比例界面中的同一组件的对应关系。
3.根据权利 要求2所述的方法, 其特征在于, 所述布局文件中各组件widget以树结构的
形式构成一组件树WidgetTree; 组件树WidgetTree中的第i个组件widgeti包含K个组件
{widgetj,widgetj+1,…,widgetj+K}或零个组件; 为每一 组件生成唯一字符串标识符作为对
应组件的ID属性auxiliaryID; 操作所述目标移动应用到达界面p, 获取缩放比例s时对应的
界面p的组件树PageWidgetTreep ,s及其中每一组件的图像, 其中
为
PageWidgetTreep,s中第i个组件
的图像; 根据
的组件ID查找缩放比例s ′
时对应的界面p中的组件
得到组件 对
4.根据权利要求3所述的方法, 其特 征在于, 生成组件
的组件ID值的方法为:
11)遍历组件树WidgetTree中的每一组件并记录其ID属性auxiliaryID; 若
的
ID属性值
是唯一的, 则将其作为组件
的ID属性值, 将组件
的ID属性 值作为组件
的组件ID值, 否则进行步骤12);
12)判断组件
是否与其兄弟组件具有相同的auxiliaryID值, 若有与组件
具有相同的auxiliaryID值的兄弟组件; 则遍历该兄弟组件的所有子孙组件, 遍
历过程中如果遇到auxiliaryID的值不唯一的子孙组件, 则停止遍历该兄弟组件及其子孙
组件, 将遍历到的组件的文本属性值连成一个字符串postfix, 将遍历到的组件的
auxiliaryID值和postfix连接 到一起, 构成组件
的组件ID值。
5.根据权利要求3所述的方法, 其特征在于, 所述组件
的属性包括高度
宽度
渲染顺序drawingOrderip,s、 文本
可滚动性
缩放比例
所述图像
为宽度
高度
深度为4的多通道图像, 所
述图像
的最后一个通道为透明度通道图像
前三个通道为红绿蓝通道图权 利 要 求 书 1/4 页
2
CN 115357490 A
2像
6.根据权利要求5所述的方法, 其特 征在于, 进行组件间分析的方法为:
21)对于缩放比例s时对应的界面p的组件树PageWidgetTreep,s, 以先根遍历的方式遍
历组件树PageWidgetTreep,s中每一组件, 如果当前组件为非根组件
则利用非根
组件
的图像
的透明度通道alphap,s,i的数据初始化一个宽度为
高度为
的二维可 见矩阵visiblep,s,i;
22)判断非根组件
于屏幕中的区域 是否在其 父组件
于屏幕中的区域
之外, 若在区域之外, 且父组件
不可滚动, 则判断此非根组件
不可见, 并
且设置组件
的
属性为false; 若在区域之内, 则获得非根组件
在其父组件
的区域内部的裁剪图像
和对应的裁剪坐标区
域
23)将裁剪图像
作为模版, 在父组件
的图像中进行匹配搜索, 如
果搜索到的区域
和裁剪坐标 区域
的交并比等于1, 则判定
非根组件
在父组件
中可见, 记录组件
的
属性为
false, 否则不可 见, 并记录组件
的
属性为true;
24)获得父组件
的可见矩阵visiblep,s,j, 获得非根组件
的可见矩阵
visiblep,s,i, 若组件
的
属性为false, 则将可见矩阵visiblep,s,i中所
有的值赋值 为0; 否则, 进入步骤25);
25)根据非根组件
的可见矩阵visiblep,s,i, 获得对应的可见面积
根据
裁剪坐标区域
对非根组件
的可见矩阵和父组件
的可见
矩阵进行裁剪, 并对裁剪结果进行按位和的操作, 得到crop edANDVisiblep,s,i; 然后根据裁
剪坐标区域
将cropedANDVisiblep,s,i替换回visiblep,s,i的裁剪区域之中,
得到更新后的visiblep,s,i, 并计算新的可见面积
若
等于
则记录组件
是否被父组件遮挡的属性
为false, 否则为
true;
26)对于
属性为true的非根组件
若其兄弟组件集合
非
空, 则利用其在父组件之中的绘制顺序drawingOrderip,s, 分析非根组件
和其兄弟
组件集合的遮挡关系, 并记录遮挡非根组件
的兄弟组件交叠集 合
27)按照步骤21~26)的方法对缩 放比例s′时对应的界面p的组件树PageWidgetTreep,s′
进行处理, 得到PageWidgetTreep,s′中每一非根组件
的属性值
权 利 要 求 书 2/4 页
3
CN 115357490 A
3
专利 一种针对移动应用的界面缩放缺陷检测方法及电子装置
安全报告 >
其他 >
文档预览
中文文档
17 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共17页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 04:40:01上传分享