System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
:本专利技术涉及一种自动化的移动端应用控件无障碍可聚焦检测方法和装置,属于计算机技术软件领域。
技术介绍
0、
技术介绍
:
1、随着现在移动应用(app)的普及,残障人士自然应和普通人一样享受到app给生活带来的便利。对于视障人士来说,他们只能通过无障碍模式下的“屏幕阅读器”来聚焦app页面中的控件,从而获取控件的内容、使用控件的功能。为了保证视障人士能够正常地使用移动应用提供的功能,对移动应用控件的无障碍可聚焦性检测是必不可少的。做出检测后,可以及时对移动应用开发者做出反馈,提醒其修改存在无障碍可聚焦性问题的控件,从而提升视障人士的使用体验。
2、目前,对于该项问题的常见检测方法有两大类:人工检测和利用app源码检测,主要存在以下缺陷:(1)人工检测需要专人对移动应用进行逐页、逐个控件遍历检查,会消耗大量的时间成本、人力成本,且高度依赖检测员的业务能力。(2)利用app源码进行检测的方法是直接对源码进行解析,根据控件中可聚焦性相关的属性值进行判断;但这种做法不具有通用性,一方面,app源码不能被轻易泄露给外部人员或机构;另一方面绝大部分商用app都做了良好的反编译对抗,反编译工具无法生效。
技术实现思路
0、
技术实现思路
:
1、针对以上问题和难点,本专利技术提出了一种自动化的移动端应用控件无障碍可聚焦检测方法和装置。与人工检测的方法相比,该方法达到很高的自动化程度,既摆脱了对于专业检测员的依赖,也提高了检测速度;与利用app源码进行检测的方法相比
2、一种自动化的移动端应用控件无障碍可聚焦检测方法,具体步骤如下:
3、s101:打开屏幕阅读器和相应软件,其主要作用是,通过蓝牙自动化检查移动应用程序的gui,用焦点框框出来并保存截图;
4、s102:对s101中获得的截图,利用计算机视觉的方式识别页面中被焦点框框住的控件,作为“实际被聚焦”的控件;
5、s103:开启自动化测试工具appium,将页面内容解析为树形结构,树中的每一个节点为一个控件;
6、s104:遍历s103中解析出树形结构的每一个节点,根据节点属性值选出可操作或含有信息的控件,即应展示给残障人士的控件,作为“应被聚焦”的控件;
7、s105:利用s102中获得的控件集合与s104中获得的控件集合,判断每一个“应被聚焦”的控件是否“实际被聚焦”;
8、s106:返回s105中判断为“应被聚焦但实际未被聚焦”的控件,作为检测结果;
9、s107:每打开一个移动应用页面,都可以执行上述步骤,自动化地检测页面中控件的无障碍可聚焦性。
10、具体所述步骤s101中,所使用到的屏幕阅读器的具体形式如下:android的屏幕阅读器为talkback,ios的屏幕阅读器为voiceover。
11、具体所述步骤s101中,截图的具体要求为:图像必须为png格式。
12、具体所述步骤s102中,计算机视觉方法大致如下为:对s101中获取的截图,确定焦点框颜色对应的rgb矩阵,并根据不同背景叠加得到rgb的值,得到一个单通道图像;得到的单通道图像进行边缘检测,检测到焦点框的边缘;对边缘进行直线检测,并得到直线的直角坐标系方程式;筛选s106得到的方程式,得到焦点框对应的直线,计算控件的中心坐标和长宽。
13、具体所述步骤s102中,获取每一个控件的具体内容为:控件的最小包围矩形(也称为控件坐标)。最小包围矩形由如下构成:矩形中心水平坐标,矩形中心垂直坐标,矩形宽度,矩形高度。
14、具体所述步骤s103中,启动自动化测试工具appium的具体方法为:首先,连接待测设备和pc机;然后,在pc机上开启appium server;最后,在检测程序中启用appium功能。
15、具体所述步骤s103中,appium解析出页面树形结构的数据形式为:xml标记语言字符串,每个节点代表一个控件,且节点中含有控件的文本信息、位置信息和其他功能信息等。
16、具体所述步骤s104中,“可操作或含有信息”节点的属性值具体为:“可点击”属性值为true或“可聚焦”属性值为true或“节点文本”属性值非空。
17、具体所述步骤s104中,获取每一个控件的具体内容为:控件的最小包围矩形(也称为控件坐标)。最小包围矩形由如下构成:矩形中心水平坐标,矩形中心垂直坐标,矩形宽度,矩形高度。
18、具体所述步骤s105的具体判断方法是:
19、s1051:对于每一个“应被聚焦”的控件,在所有“实际被聚焦”的控件进行匹配,若存在某个“实际被聚焦”控件与该“应被聚焦”的控件成功匹配,则认为该“实际被聚焦”的控件与该“应被聚焦”的控件表示的是同一个控件,即该“应被聚焦”的控件“实际被聚焦”,没有无障碍可聚焦问题;若未找到,则认为有无障碍可聚焦问题。
20、s1052:s1051中“匹配”的具体方法是:将“应被聚焦”控件与“实际被聚焦”控件的最小包围矩形进行交并比计算,若交并比不小于设定阈值,则认为匹配成功;否则认为匹配失败。
21、s1053:s1052中交并比的含义是:两矩形相交面积与相并面积之比;相交面积为两矩形重叠部分的面积,相并面积为两矩形无重叠部分的面积加上重叠部分的面积。
22、本专利技术的第二个专利技术涉及一种自动化的移动端应用控件无障碍可聚焦检测装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现本专利技术的一种自动化的移动端应用控件无障碍可聚焦检测方法。
23、综上,本专利技术创建了基于计算机视觉和自动化测试工具的移动应用控件无障碍可聚焦检测方法,具有如下有益效果:(1)实现该项检测的完全自动化,极大减少人力成本,摆脱了对于检测员的依赖;(2)可应用于任何场景,例如具有弹窗、子页面等交互逻辑的页面。(3)非侵入式方法,不需要获取源码,可用于黑盒测试场景,具有强大的普适性。
本文档来自技高网...【技术保护点】
1.一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于,包括以下步骤:
2.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S101,所使用到的屏幕阅读器的具体形式如下:
3.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S101中,截图的具体要求为:png格式。
4.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S102中,计算机视觉方法如下:
5.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S102中,获取每一个控件的具体内容为:
6.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S103中,启动自动化测试工具APPIUM的具体方法为:
7.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S103中,APPIUM解析出页面树形结构的数据形式为:
8.根据权利1所述
9.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤S105的具体判断方法是:
10.一种自动化的移动端应用控件无障碍可聚焦检测方法装置,其特征在于,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现权利要求1-9中任一项所述的一种自动化的移动端应用控件无障碍可聚焦检测方法。
...【技术特征摘要】
1.一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于,包括以下步骤:
2.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤s101,所使用到的屏幕阅读器的具体形式如下:
3.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤s101中,截图的具体要求为:png格式。
4.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤s102中,计算机视觉方法如下:
5.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤s102中,获取每一个控件的具体内容为:
6.根据权利1所述的一种自动化的移动端应用控件无障碍可聚焦检测方法,其特征在于:所述步骤s103中...
【专利技术属性】
技术研发人员:卜佳俊,王海民,周晟,于智,王炜,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。