IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 中通科技移动自动化测试的革新与探索 -> 正文阅读

[开发测试]中通科技移动自动化测试的革新与探索

背景:

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

作为物流行业,业务生命周期比较长,贯穿了收,发,到,派,签等主要关键节点,把终端客户,网点,中心每个端的用户联系起来。公司内部有几个重点产品,都提供了移动端应用,旨在为广大用户带来便捷性,尤其是掌中通 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、人工智能等前沿科技在测试领域的运用给了我们无限遐想的空间。基于测试步骤截图,利用图像识别技术筛选不同设备上有差异的步骤,进行兼容性测试等等方案的实施也变得不再那么遥远。

更多详情交流可加微信 :13003195121

?

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-09-09 12:04:57  更:2021-09-09 12:05:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 0:28:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码