在金融APP作自动化这条路上,咱们填过哪些坑?

从市场上金融企业对app的重视程度,天然看出其在市场、用户和企业眼中的重要性。甚至有测试部门要求拿着圆规比对icon圆是否是正圆,拿着尺子去量icon尺寸是否是正确!软件质量要求最高的的金融行业,在对待app自动化这件事天然是走在业内前列。web

而当前金融行业app作自动化的问题已经不是是否用UI自动化的方式,也不是说是录制、回放仍是写脚本的方式。答案很明显:app最注重用户体验,天然要作UI自动化,不能让测试人员写脚本。写脚本对测试人员要求极高,也增长了企业成本。算法

世人眼中的UI自动化
手工测试人员:UI自动化实现了,测试就能够不用测了自动工程师:最大的难点是维护成本极高,验证功能而非UI,能得到多少收益关键看被测系统自己的稳定性以及自动化技术能力浏览器

今天就来讲说,为了达到必定高的自动化率,咱们都遇到过哪些坑。app

在作app自动化过程当中,有两大通用性问题不可回避;框架

一、 屏幕分辨率和系统差别工具

业内人士必定知道,作app的自动化必定不能依靠坐标,最多做为辅助手段。图像识别也被人诟病,极客们一般是“从入门到放弃”。缘由是你们用的开源算法,或许作了点优化,但仍然不能适应多样化的app以及app版本的迭代。测试

示例:采用坐标点击方式不能适配不一样机型优化

图片描述

所以这种方式必不可取。加密

二、 iOS&Android两套彻底不一样的系统spa

用例几乎不分两套系统,但是这两套系统却决定了自动化脚本必须是两套。

图片描述

对金融企业科技部来说,要自研这两套系统的app自动化系统,投入太大时间过久,更不用说操做系统升级后的更新(要知道乔爸爸血统一次更新可能就是换血)。

第一大类:影响自动化执行(操做)准确性

H5技术运用愈来愈多

H5技术的诞生,给开发者带来了福音,却给自动化开发者带来了强烈的冲击。许多本来已经作好app自动化框架大公司也不得从新考虑。而无论选择哪一种机制都必然会遇到一些意外:

采用非原生webview控件

为了使产品更加完美,开发人员使用了各类非原生的webview控件,示例:这是开发人员在页面设计时调用了腾讯X5的内核浏览器,就没法用统一的技术获取到页面layout

图片描述

诸如此类的问题还有不少,H5的layout获取不到、不许确,都将致使自动化执行失败和预期结果检查出错。

键盘加密、验证码获取

乱序加密键盘

图片描述

这是金融行业最一致的问题,为了让每用例脚本互不影响,初始状态都从登陆开始。这些乱序加密键盘不可能获取到layout,那必须采用特定算法精确找到数字区域并自动点击。

手势密码

还有银行一般使用的手势密码

验证码获取

部分金融企业采用了验证码方式:正常验证码、艺术验证码

都须要用特定技术手段获取到准确的验证码内容,同时自动化工具备灵活机制实时填入。

三、 日期控件,不一样系统版本、不一样手机厂商、不一样app开发团队

不论是银行仍是证券,对历史记录的查询是不可缺乏的测试案例。例如测试前几年某个月的记录,那就须要滑动、点击不少次。这就致使执行准确度低、用例执行效率低。

这须要定制化研发一整套(两套系统,多个版本,多种机型)日期自动化设置小工具,才能实现这些用例的自动化。

第二大类:阻塞结果校验正确行

提取控件部份内容

示例:如图所示的alert内容,须要提取做为预期结果检查,但合同号“5”是变化的。则只能检查“您的申请已提交,合同号为:”。“5”则要单独提取做为查询的索引。

安卓提示采用Toast机制

toast提示难以抓取,就没法从APP端验证流程正确性。这是评价app自动化工具强大的一个标准。

特殊计算

示例:须要计算持仓1/四、1/3的整数份。例如:持仓800股(每手为100股),卖出1/3,则卖出数量为:800/3(取整)=200股(2手)。

如何有效应对版本更新带来的批量脚本更新问题

以上问题都创建在app的页面layout信息不变的状况,而其实是可能变化的,即便是以稳定为主的金融企业,也会由于创新业务需求,改变页面设计。这就致使一个问题,如今已有大量的测试脚本,这种基于layout的录制方式,页面设计改动后,如何高效更新大量的测试脚本,让自动测试真正的快起来?

TestBird眼中的UI自动化(轻量、简单、高效率)

不写脚本用例的自动化率达到必定高的程度才能得到收益维护成本必定要下降到可接受范围app的自动化是适配多终端、多系统的

相关文章
相关标签/搜索