背景:

随着移动设备的大量普及,这几年,移动应用也甚嚣尘上,层出不穷。用户对便捷性,对体验感的极致追求,促使移动端研发越来越火爆,对应的,移动端的测试也变得越来越重要。

作为物流行业,业务生命周期比较长,贯穿了收,发,到,派,签等主要关键节点,把终端客户,网点,中心每个端的用户联系起来。公司内部有几个重点产品,都提供了移动端应用,旨在为广大用户带来便捷性,尤其是掌中通APP,快递小哥每日的工作分配,工作路线,工作量,客户信息,薪资结算等都可以通过掌中通APP一目了然的呈现,其准确性,稳定度会直接影响公司所有快递收发进度。为了保证质量,提高测试效率,有效的自动化工具不可或缺。

一、移动 UI 自动化探索(现状)

测试部一直在探索移动端自动化测试的方法,多年前我们就已经基于BDD 框架 robot framework 以及 Appium 实现了所有公司重点项目基于关键字的自动化测试,在 IDE 的加成下,大部分的移动测试人员都可以实现自动化脚本的开发。下图是该框架下的部分脚本:


随着时间推移,app 变得越来越复杂,脚本也越写越多。同时今年以来业务的需求变化越来越多,这种自动化方式也越来越难以维护。

我们急需一个平台来解决以下方面的问题:

  • 能够快速完成脚本开发,以适应业务快速迭代的需求;
  • 可以同时运行在数十台设备上完成测试,快速筛选出兼容性问题,同时尽量多的运行 monkey 脚本来提前发现问题;
  • 统一管理测试脚本 / 用例,在 app 上线前快速进行回归测试。

二、自动化工具升级(探索.选型)

移动端自动化工具有很多,但是同时支持 Android 和 iOS 平台的没有几个,最常见的就是 Appium 和 网易的 Airtest。虽然两个都提供了IDE 的支持,但是 airtest 效率比 Appium 好太多。最大的优势在以下两点:

  • 基于图片识别,可以快速完成脚本开发;
  • 同时提供了脚本录制功能,而且脚本质量很高。

下图就是一个录制的脚本,可读性很强。


经过对多个产品的demo验证,发现该工具可以满足我们的基本诉求。后期便着力于 基于该工具开发一个移动端测试平台。

三、移动真机平台(打地基)

基于 atxserver2 的二次开发,集成 SSO(SSO是公司内部的一个统一登陆鉴权服务),我们开发了一个移动真机平台,无论测试同学还是开发工程师都可以通过这个平台查看可用手机,手机具体详细信息,借用手机来复现问题以及验证自动化脚本的稳定性。

该平台为移动自动化平台提供大量设备支持。下图为平台的截图。

四、移动自动化平台(实践)

有了以上的储备,我们开始设计移动自动化平台,该平台基本架构如下:


1.利用 Jenkins 的 pipeline 来运行脚本,同时为了提高效率以及隔离脚本之间的影响,所有的任务是运行Jenkins slave在容器里面的,以最大程度提高并发量;

2.平台可以指定脚本运行的手机设备,如果不指定会在所有手机上执行该自动化;

3.同一台手机没有办同时来运行多个脚本,系统提供了任务调度以保证脚本最大可能的运行到各个设备上,有如果一台设备有脚本执行,自动进度排队状态等待设备空闲。系统也会根据项目的优先级来调整等待顺序,以保证重要项目的脚本优先执行;

4.平台统一了脚本的配置方式,可以手动执行,也可以配置成周期任务海之星;

5.最后系统会统计所有执行过的设备,然后统计出结果,统一展示。


得益于 airtest 支持,脚本的每个步骤都可以进行截图,可以很清楚的看到每个步骤执行时,在不同设备上的情况。甚至你还可以设置进行视频录制。如果发现了错误,也会很明显看到出错的步骤。

目前系统已经上线,重点项目逐渐接入中。

五、未来展望

展望未来图像识别、5G、人工智能等前沿科技在测试领域的运用给了我们无限遐想的空间。基于测试步骤截图,利用图像识别技术筛选不同设备上有差异的步骤,进行兼容性测试等等方案的实施也变得不再那么遥远。

让我们一起努力,拥抱科技,不断创新,为测试提质增效、为质量保驾护航。


最后:如果对软件测试、接口测试、自动化测试、技术同行、持续集成、面试经验交流。感兴趣可以进到 902061117,群内会有不定期的分享测试资料。

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

好文推荐

2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!

什么样的人适合从事软件测试工作?

软件测试和软件开发哪个发展更好

那个准点下班的人,比我先升职了…

中通科技移动自动化测试的革新与探索相关推荐

  1. TiDB x 中通科技 | 提效 300%,TiDB 联手中通让你的包裹“实时可见”

    「我们已经用起来了」,是我们最喜欢听到的话,简简单单几个字的背后代表着沉甸甸的信任和托付.从今天开始,我们将通过**「相信开放的力量」**系列深度案例分享,从业务的角度,看看一个数据库为各行业用户带来 ...

  2. 中通科技是如何建模并高效处理车辆上的时序数据的

    小 T 导读:车联网业务是中通科技配送全链路业务中非常重要的一环,在实际的项目需求中,需要实时查询车辆最新位置状态,达到车辆运营可视化管理.中智车联服务平台选择了用 TDengine 来高效处理从车辆 ...

  3. 中通科技代码覆盖率应用实践

    概述 代码覆盖率,是一种依靠计算测试过程中被执行源码占全部代码行的比例,进而度量测试用例对程序覆盖的情况,从而查漏补缺,完善软件质量的方法. 那么做代码覆盖率统计的意义是什么呢?通过研究代码覆盖率报告 ...

  4. 中通科技代码覆盖率应用实践(一)

    概述 代码覆盖率,是一种依靠计算测试过程中被执行源码占全部代码行的比例,进而度量测试用例对程序覆盖的情况,从而查漏补缺,完善软件质量的方法. 那么做代码覆盖率统计的意义是什么呢?通过研究代码覆盖率报告 ...

  5. 中通科技代码覆盖率应用实践(二)

    欢迎进入

  6. 中通科技代码覆盖率应用实践(三)

    欢迎进入

  7. 科技逆袭?中通变了呢!

    电子面单.分拨中心.代收蜂巢.同城配and次日达--耳熟能详的词汇一大串儿-- 当当当--您的包裹--在家吗? 在这开门与关门之间,快递俨然成为人们生活中即柴米油盐之后最最重要的组成部分之一. 有数据 ...

  8. 连获Luminar、AMD青睐,亿咖通科技是家什么神仙公司?

    很多人认为亿咖通科技是"为吉利汽车开发车机"的公司,但其实这只是冰山一角.海面下,亿咖通科技在布局的,是智能汽车全栈计算平台--是一套能够支撑车企和一级供应商打造具备自身品牌特征的 ...

  9. TiDB 在中通的落地与进化

    本文介绍了 TiDB 从 2017 年至今中通落地的情况.从满足超大规模数据量的处理,到实时多维分析能力的增强,再到平台功能的完善--TiDB 通过愈发完备的 HTAP 能力打造一站式的数据生态,助力 ...

最新文章

  1. pwn学习总结(四)—— 堆基础知识(持续更新)
  2. mysql截取栏目字符_substring从指定字符串开始截取(图)
  3. 看一下CDI 2.0 EDR1
  4. 关于Servlet中filter过滤器的小问题
  5. 华为云应用服务网格最佳实践之从Spring Cloud 到 Istio
  6. 关于redis key命名规范的设计
  7. 微服务网关SIA-GateWay使用指南 ===
  8. 九宫格拼图 | 8Puzzle | C/C++实现
  9. Masked Siamese Networksfor Label-Efficient Learning
  10. T1292:宠物小精灵之收服
  11. SETi的Violeds技术解决方案可帮助阻止德尔塔变异病毒的传播
  12. DB2数据库常见问题汇总
  13. 关于微信小程序如何调用wx.login获取openId和用户信息
  14. 痴情不是罪过 忘情不是洒脱
  15. 瓦片地图面面观之瓦片组织
  16. 洛谷P2161 [SHOI2009]会场预约【Treap】
  17. 微信小程序——沉浸式导航栏实现(含iphoneX适配和组件封装)
  18. 自己电脑做服务器需要装什么系统,自己电脑做服务器需要什么配置
  19. animate.css源码
  20. 计算机pc的桌面操作系统,电脑桌面操作系统介绍

热门文章

  1. TensorFlow 教程 --教程--2.7字词的向量表示
  2. 从零开始,教初学者如何征战全球最大机器学习竞赛社区Kaggle竞赛
  3. 马斯克:大部分人没必要活那么长!活太久会让社会“陷入窒息”
  4. 疑似小米12 mini渲染图曝光:屏幕不到6英寸 真小屏旗舰
  5. 春节档电影评分出炉:韩寒《四海》垫底仅有 5.6 分,他居然第一
  6. 特斯拉11月份售出52859辆国产汽车 同比增长145%
  7. 好未来:今年12月31日停止内地义务教育阶段学科类培训
  8. 新的“钉子户”来了!一加9RT将于10月13日正式亮相
  9. FF:与吉利控股的合作取得实质性进展 双方技术团队正紧密对接
  10. iPhone 13系列或将涨价?业内人士:可能性不大,原因有这几点