AirtestProject 答疑第二期 | 使用 Airtest 最常见的 8 大问题

fishfish-yu · 2020年03月27日 · 2209 次阅读

此文章来源于项目官方公众号:“AirtestProject”
版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途

1.用 Airtest 测试 iOS 一定要用 macOS 吗?

① 使用 xcode 部署 iOS-Tagent 需要在 macOS 完成;

② 部署好以后可以在 macOS 或 Windows 机器上连接到 iOS 手机进行测试。

2.本地 pip list 可以找到 airtest,但 pycharm 里找不到

很多同学都遇到过这个问题,明明在本地命令行使用 pip list 可以看到已经安装了 Airtest 库,但是在自己的 pycharm 里面却找不到 Airtest 这个库。 这种情况很有可能就是你的 pycharm 使用了 虚拟环境的解释器

你可以随意运行 1 个项目,然后查看运行结果窗口显示的解释器是不是你在本地安装的解释器的路径,如果不是,一般会带有 venv 的字样,例如:

D:\test\vene\Scripts\python.exe D:\test\test.py

这种情况只需要将 pycharm 从虚拟环境切换到安装了 Airtest 的本地环境即可。

3.报告可以导出发给别人看吗?

Airtest 的报告是可以打包发给别人看的。

① 想要导出报告发给别人观看,我们需要生成报告的命令中传入 --export 参数,这样就可以将 包含静态资源文件和图片文件的报告 导出到一个指定的文件夹内,之后直接将整个文件夹发送给别人观看即可。

② 如果生成报告时不传入 --export 参数,那么报告中的静态资源文件和图片文件将使用 绝对路径 来访问,此时将整个文件夹发给别人观看,别人也是无法正常观看的。

4.pip install -U airtest 无限超时

使用 pip 命令安装 Airtest,如果出现无限超时的问题,可以考虑配置 清华源 来解决。

5.如何检查 adb 是否连接上设备

使用 AirtestIDE 连接安卓设备之前,需要确保 ADB 已经连接上了设备。

① 我们可以使用 adb devices 来查看设备情况,如果仅仅提示 List of devices attached,则表明 ADB 未连接上任何设备;此时需要检查手机上的 USB调试 功能是否已开启,或者换一根 USB 数据线;

② 如果 ADB 已连接上设备,那么执行 adb devices 后,会显示已连接设备的列表:

List of devices attached
SJE5T17B17001648        device
SJE5T17B17001650        device

6.poco 无限重启的解决办法

① 如果开了网络代理的话,需要先 关闭各种代理 ,否则可能会影响到 poco 通讯

② 检查手机助手内是否对 pocoservice.apk 做了限制,例如在华为手机中可能需要开启 允许自启动允许后台活动

https://airtest.doc.io.netease.com/IDEdocs/device_connection/2_android_faq/#_6

③ 不能和 uiautomator 同时启动,否则会相互冲突

④ 可以尝试 重启手机 看看是否会恢复

7.如何删除 iOS 输入框的内容

① 对于 Android 平台,我们可以使用多种方法来删除输入框的内容,比如使用 keyevent 接口: keyevent("KEYCODE_DEL") ;或者使用 Poco 的 set_text() 方法: poco("xxx").set_text("")

②但对于 iOS 平台来说,暂不支持 set_text() 接口,也不支持 keyevent("KEYCODE_DEL") ,所以这俩种方法对于 iOS 的输入框来说是无效的。iOS 支持 text() 方法,所以我们可以用 text("\b",False) ,来实现 iOS 输入框内容的删除

image

8.设备连接参数怎么理解?

IDE 提供了 3 个备用的连接参数: Use javacapUse ADB orientationUse ADB touch

① 第一个 Use javacap ,是给部分无法正常看到手机画面、minicap 初始化失败 的手机或设备用的,所以模拟器看到黑屏、部分特殊的平板等设备可以考虑勾选这个选项

② 第二个 Use ADB orientation屏幕旋转 的,如果在安卓手机屏幕旋转方向检测有问题、或者是部分特殊的平板无法显示正确的屏幕方向时可以勾选

③ 第三个 Use ADB touch发送 adb 指令来点击屏幕 ,效果很差,速度也很慢,不建议勾选,只有在部分无法点击屏幕的特殊安卓设备上才需要使用(例如智能后视镜、特殊型号的平板等设备上)
正常情况下,手机都可以点击,如果无法被点击(比如小米设备),一般都是因为手机设置有选项漏了打开,特别是 小米设备要注意开启允许模拟点击 的设置

关注下方公众号,可以查看更多往期教程,回复 “交流群” 可以加入我们的官方开发者交流群

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册