文档
https://airtest.doc.io.netease.com/
基本能力
适用范围:
支持的手机: android、iphone (含模拟器)
服务端部署:linux、windows、mac
功能
Airtest框架:是一个跨平台的、 基于图像识别 的UI自动化测试框架 《—— 一般用这个
- 优点:跨平台
- 缺点:不精确,能力受限
—— 之前的使用场景:做导购小程序工作台、企助工作台的巡检,因为图标基本一样,所以脚本复用性好
Poco框架:基于UI控件识别 的自动化测试框架
- 优点:可以识别元素以及获取内容,准确
- 缺点:应用需要接入SDK
需求
有一批品牌名和公司名, 需要在微信里搜索这个品牌/公司, 找到这个品牌的小程序,查看这个品牌小程序的服务商是谁,记录下来
基本使用
编写或者使用IDE抓取页面:
- 图片模式
- 编码模式
推荐使用IDE,可以通过截屏的方式编写
基本API见:如何使用Airtest API文档 - Airtest Project Doc
基本步骤
获取名称列表
获取名称列表,通过gpt帮忙转成python list的格式
开始编写
使用Airtest框架,每个页面找到对应执行的图标,识别和点击,如 搜索按钮
通过识别按钮点击然后完成录制流程
这样就完了么?
-
点击小程序或者页面需要加载,页面切换也需要时间
需要一些wait和sleep
-
稳定性:手机性能太差容易卡死
- 使用android模拟器,需要多试几款看下兼容性:mumu、雷电、蓝叠、AVD等,大部分模拟器不支持mac M1/M2;在公司笔记本上性能一般,因为模拟器会有性能损耗,同时开airtest和模拟器,CPU经常100%,总体比手机快的不多;更推荐台式机上运行
- iOS可能会流畅一点,但iOS需要手机安装WDA,需要开发者账号,https://www.bilibili.com/read/cv11430863/
- 使用较好的真机
- 调小屏幕分辨率,屏幕越大、分辨率越高,按钮识别的越慢
- 失败的处理&重复运行的能力
批量处理过程中,需要具备:
- 某些case失败需要恢复,否则会一直失败,常见的失败场景:点击未生效、跳到了一个新页面或者新交互(如进入小程序页面报错或者要求授权)、页面卡死黑屏或白屏、页面加载时间过长
- case运行成功需要恢复初始状态
基本逻辑:判断当前页面是哪个环节,选择前进还是后退;如果不是认知范围的页面,使用后退退回
标签:需要,页面,airtest,案例,使用,Airtest,一则,模拟器 From: https://www.cnblogs.com/opama/p/17416966.html