AirtestProject 【更新公告】AirtestIDE 更新至 1.2.16 版本
此文章来源于项目官方公众号:“AirtestProject”\
版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途
1. 前言
本次更新为 AirtestIDE、Airtest、Poco 更新。
AirtestIDE 更新至 1.2.16 版本,Airtest 更新为 1.3.1 版本,Poco 更新为 1.0.92 版本,主要为iOS 内容更新、新增 Android 剪切板功能、poco 问题修复等。更多更新内容详见下文。
2. 更新内容
1)AirtestIDE 更新至 1.2.16 版本
新版 IDE 主要是新增了一个 iOS 直连面板,方便我们快速连接 iOS 设备;以及更新了内置 python 环境的 airtest、poco 库,将其提升到上述的最新版本。
iOS 直连面板的使用步骤如下:
- iOS 设备先预装好 wda,确保 wda 正确安装且可正常启动使用即可,安装详情可以参照我们官方文档。
- 使用 usb 数据线连接设备,window 系统用户记得下载并打开 iTunes
注意:
如果 iOS 系统在 15.0 以上的设备,打开 iTunes 后需要点击以下弹窗的继续:
如果 iOS 系统低于 15.0 的设备,打开 iTunes 后会跳出升级 iOS 系统的弹窗,需要点击取消(我们目前暂时还无法适配 iOS17,故谨慎升级):
- 点击 iOS 设备连接窗口的
刷新设备
按钮,记得点击设备上信任弹窗 - 点击
connect
,进行连接;当设备装有多个 wda 时,点击switch wda
下拉列表,也可以切换不同的 wda 启用
在点击
刷新设备
后,connect
按钮置灰有两种原因:
- iOS 设备没有任何可用的 wda,IDE 无法进行连接使用
- iOS 设备所安装的 wda 启动中,暂不可用,稍等一会即可恢复
相比于 1.2.15 版本,airtest 直接从 1.2.10 提升至了 1.3.1:
- Airtest 1.3.0(详看我们往期的推文 Airtest 更新至 1.3.0.1 版本)
- 新增 iOS 设备接口
- 新增 tidevice 相关接口
- 新增错误类型
NoDeviceError
- 其它小优化及改动
- Airtest 1.3.1(详看下文介绍)
Poco 也是从 1.0.89 提升至了 1.0.92:
- Poco 1.0.92(详看下文介绍)
2)Poco 更新至 1.0.92 版本
该版本主要有以下更新内容:
- 新增
poco.dump()
接口,效果等同于之前的poco.agent.hierarchy.dump()
接口,让调用更简单 - 新增
poco.double_click()
双击接口 - 在 android poco 主动调用
stop_running
时,释放申请的端口号 - 更新了 PocoService.apk,对一些机型兼容性更好
3)Airtest 更新至 1.3.1 版本
该版本主要是更新了几个小功能以及做了一些修复:
- ① Airtest 报告中现在将会显示
connect_device
接口连接的设备
- ② iOS 和 Android 设备在连接时,支持传入
name
参数,用于指定它的udid(ios)
或serial number(android)
# iOS设备
ios:///http://10.240.145.171:20092?name=83282c400efc9122e3bcba60c803cf318a6b3822
# 安卓远程设备
android://127.0.0.1:5037/10.227.71.86:20029?name=serialno
- ③ 支持指定 ADB:现在将会优先使用当前的 ADB 进程,或者是系统变量设置了
ANDROID_HOME
中的 ADB,如果都找不到,才会使用 airtest 里的 ADB。同时也支持直接指定adb_path
,例如:
from airtest.core.android.android import Android, ADB
adb = ADB(adb_path=r"D:\adb\adb.exe")
# 或者可以初始化一个指定了adb_path的Android设备对象
dev = Android(serialno="5TSSMVBYUSEQNRY5", adb_path=r"D:\test\adb41\adb.exe")
- ④ 新增了 Android 剪切板功能
text = "test_clipboard"
set_clipboard(text) # 设置剪切板内容
get_text = get_clipboard() # 获得剪切板内容
print(get_text) # -> test_clipboard
# 剪切板粘贴接口
paste() # => text(get_clipboard())
- ⑤ 如果遇到了手机画面只有一半的情况,重新连接画面即可恢复
3. 如何更新
1)覆盖更新
打开 AirtestIDE 时,如收到下述的更新提示,可以直接选择点击左下角的【更新】按钮来完成覆盖更新:
特别注意:更新过程切勿中断,如覆盖更新时因为某些异常中断,可能导致覆盖更新失败,无法正常打开 AirtestIDE。
此时我们可以卸载掉更新失败的 AirtestIDE,然后到官网上下载最新版。
另外覆盖更新之前,请检查是否将脚本保存到了 AirtestIDE 的文件路径内,如有请备份脚本后再进行覆盖更新,否则进行 覆盖更新操作后也会覆盖掉保存在 AirtestIDE 路径下的脚本 。
2)到官网上下载最新版本
官网下载地址:https://airtest.netease.com/index.html:
3)本地 Python 环境库更新
如需把本地 Python 环境的库更新至与 1.2.16 一样的环境,可以使用如下命令:
# airtest最新版为1.3.1
pip install -U airtest
# pocoui最新版为1.0.92
pip install -U pocoui
4. 其它问题
1)覆盖更新失败
如果同学们在覆盖更新的时候,不能正确更新的话,可以删掉这个目录下的所有内容,再重新检查更新并执行更新操作:
C:\Users\xxx\AppData\Local\AirtestIDE\AirtestIDE
或者 直接到我们官网上下载一个最新的版本 。
2)旧版没问题,更新后出现 xxx 问题
如果同学们遇到,旧版使用没问题,但更新后出现 xxx 问题的情况,请务必给出详细的信息向我们提问:
- 旧版本信息(IDE 版本,是否使用本地 python 环境,若使用本地安装的 airtest 和 pocoui 版本如何)
- 新版本信息(IDE 版本,是否使用本地 python 环境,若使用本地安装的 airtest 和 pocoui 版本如何)
- 进行了怎么样的操作/运行了怎么样的代码
- 旧版表现如何,新版表现如何(如出现报错,请提供完整的报错信息)
如无法提供上述详细信息,开发者将可能很难帮助同学们查到问题所在。
3)向开发组提单
其他关于新版使用过程的任何问题/建议,都可以向我们的开发组提单:https://airtest.netease.com/issue_create 。(提单时标题备注 1.2.16 版本 IDE 可以让开发者快速定位)
AirtestIDE 下载:airtest.netease.com/\
Airtest 教程官网:airtest.doc.io.netease.com/\
搭建企业私有云服务:airlab.163.com/b2b
官方答疑 Q 群:117973773