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

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: 答疑第二期 | 使用Airtest最常见问题8大问题

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无限重启的解决办法



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

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


airtest.doc.io.netease.com/IDEdocs/dev…


③ 不能和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输入框内容的删除



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



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


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

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

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

相关实践学习
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
小程序 测试技术 API
|
编解码 Ubuntu 虚拟化
【问题解决】VMware安装ubuntu操作系统出现分辨率的问题
【问题解决】VMware安装ubuntu操作系统出现分辨率的问题
2117 0
【问题解决】VMware安装ubuntu操作系统出现分辨率的问题
|
9月前
|
运维 监控 安全
HTTPS 证书自动化运维:HTTPS 证书管理系统之优势对比
本文详细介绍了一款功能强大的HTTPS证书管理系统,涵盖自动签发、更新、实时监控、部署一体化、自定义加密算法、集中管理和邮箱通知等功能。系统通过简化配置、智能引导、快速响应和多重防护等优势,确保企业和个人用户能高效、安全地管理证书,提升网站和应用的安全性。
|
10月前
|
缓存 Java 数据库连接
深入探讨:Spring与MyBatis中的连接池与缓存机制
Spring 与 MyBatis 提供了强大的连接池和缓存机制,通过合理配置和使用这些机制,可以显著提升应用的性能和可扩展性。连接池通过复用数据库连接减少了连接创建和销毁的开销,而 MyBatis 的一级缓存和二级缓存则通过缓存查询结果减少了数据库访问次数。在实际应用中,结合具体的业务需求和系统架构,优化连接池和缓存的配置,是提升系统性能的重要手段。
368 4
计算机网络——物理层-物理层的基本概念、物理层下面的传输媒体
计算机网络——物理层-物理层的基本概念、物理层下面的传输媒体
405 0
|
12月前
|
关系型数据库 MySQL 应用服务中间件
站库分离技术--反向代理技术-雷池云WAF-给自己搭建一个安全点的网站
站库分离技术--反向代理技术-雷池云WAF-给自己搭建一个安全点的网站
461 3
|
Java 关系型数据库 MySQL
Eclipse中出现javax.servlet.ServletException: javax.servlet.jsp.JspTagException: ...500问题
Eclipse中出现javax.servlet.ServletException: javax.servlet.jsp.JspTagException: ...500问题
985 0
Eclipse中出现javax.servlet.ServletException: javax.servlet.jsp.JspTagException: ...500问题
|
Linux 测试技术 调度
新工具开源!一款iOS自动化利器(附地址)
tidevice 是阿里的内部的一个小组用来做 iOS 自动化用的工具,通过逆向iOS通信协议,使用纯Python实现。目前淘宝和其他部分事业部已经全面使用了该技术,进行iOS应用的性能采集,UI自动化。
2787 0
新工具开源!一款iOS自动化利器(附地址)
EMQ
|
机器学习/深度学习 边缘计算 JSON
车联网 CAN Bus 协议介绍与数据实时流处理
CAN Bus 是一种串行通信协议,能够让设备之间可靠而高效地传输数据。本篇博客将探讨使用 CAN Bus 中遇到的挑战,以及如何用 eKuiper 和 MQTT 解决这些问题。
EMQ
635 0
车联网 CAN Bus 协议介绍与数据实时流处理