设备详情
- Airtest IDE版本:V1.2.2
- 夜神模拟器版本:V6.5.0.3006
- mumu模拟器版本:V2.2.28(X86)
- python环境:
- IDE使用自带的python3.6
- 命令行使用本地的python3.7
- 电脑系统:Win10
IDE连接模拟器的步骤
- 启动模拟器,打开
设置-关于平板电脑-版本号
,连续点击版本号5次以上,进入开发者模式 - 打开
开发者模式
,开启USB调试
选项
- 点击IDE右侧的
远程设备连接
,输入adb connect + 模拟器对应端口号
,点击连接(夜神模拟器的端口号为127.0.0.1:62001
;mumu模拟器的端口号为127.0.0.1:7555
,其余模拟器端口号详见我们的官方文档) - 当移动设备窗口出现对应的模拟器设备,下拉
connect
选项,勾选Use javacap
和Use ADB orientation
选项,再单击connect
即可
模拟器黑屏或报错
有时候同学们在连接模拟器的时候,会出现模拟器黑屏或者以下报错:
大部分情况都是因为在连接模拟器时,没有下拉勾选Use javacap
和Use ADB orientation
这俩个选项。
需要注意的是,并不是所有版本的模拟器都要同时勾选上述俩个选项才能够连接。有些版本的模拟器只需要勾选Use javacap
即可解决模拟器黑屏或者报错的问题。所以在连接非本文给出的两个版本的模拟器,并出现问题时,可以先尝试勾选Use javacap
看能不能解决,不能解决再把Use ADB orientation
也勾选上。
在命令行传入模拟器设备参数
如果在命令行运行脚本时,连接的是模拟器设备,有一点需要注意,因为我们在连接时勾选了Use javacap
和Use ADB orientation
这俩个选项,所以在命令行连接设备的时候,也需要把这俩个参数附加在设备字符串后面:
airtest run D:/test/moniqi_test.air --device Android://127.0.0.1:5037/127.0.0.1:62001?cap_method=JAVACAP^&^&ori_method=ADBORI --log E:/log_test 复制代码
- 模拟器设备字符串的定义为:
Android://<adbhost[localhost]>:<adbport[5037]>/模拟器端口号 复制代码
其中,adbhost
是adb server
所在主机的ip,默认是本机127.0.0.1
,adb port
默认是5037
。 2. 设备字符串后面跟了多个参数,需要用&&
来连接,但是&
这个字符需要转义才能够生效: Windows下改写成^&^&
,MAC下改写成/&/&
在脚本编写模拟器的connect_device语句
如果不想在命令行中传入设备参数,我们也可以在脚本内编写connect_device语句来连接模拟器设备:
# -*- encoding=utf8 -*- __author__ = "xiaoming" from airtest.core.api import * dev = connect_device("Android://127.0.0.1:5037/127.0.0.1:62001?cap_method=JAVACAP^&^&ori_method=ADBORI") auto_setup(__file__) 复制代码
这样在命令行运行脚本时,就不用添加连接模拟器设备的参数了。
在纯.py脚本传入模拟器设备参数
如果我们使用纯.py脚本,在设备初始化时,也需要传入相应的模拟器设备参数:
# -*- encoding=utf8 -*- __author__ = "xiaoming" from airtest.core.api import * from airtest.cli.parser import cli_setup if not cli_setup(): auto_setup(__file__, logdir=True, devices=[ "Android://127.0.0.1:5037/127.0.0.1:62001?cap_method=JAVACAP^&^&ori_method=ADBORI", ])