2.mumu常见模拟器连接端口汇总(一)(组图)

日期: 栏目:文章分享 浏览:6135 评论:0

二、模拟器连接1. 前言

如果我们手边没有可用的真机,又想进行应用自动化测试,这时候就要使用的模拟器自动化测试功能了。

所支持的模拟器包括 (AVD) 和市面上常见模拟器(如 Mumu模拟器 )。

模拟器可以像真机一样连接到中,如果 画面显示为黑屏 ,请在连接模拟器之前,勾选按钮下拉菜单里的 Use 选项,然后再点击 按钮进行连接。如果依然连接失败,可以尝试再勾选 use adb 后连接。

2. mumu模拟器连接示例

这里以mumu模拟器为例, 展示一下模拟器的连接流程:

1)开启 允许USB调试 设置

首先,与手机类似,需要打开模拟器的 开发者选项-允许USB调试 。部分模拟器可能需要找到 设置-关于手机/关于平板 点击多次后才能打开开发者选项:

2)在模拟器中手动安装上 .apk

IDE连接部分模拟器时,可能无法自动安装上.apk,这里我们建议大家直接在模拟器中手动安装上这个应用,我们可以到的下述目录下找到这个apk:

3)在IDE中连接mumu模拟器

3. 市面常见模拟器连接端口汇总

主流模拟器的设备连接代码如下:

模拟器adb连接代码

网易Mumu

adb 127.0.0.1:7555

夜神

adb 127.0.0.1:62001

雷电

adb 127.0.0.1:5554

逍遥

adb 127.0.0.1:21503

adb 127.0.0.1:54001

天天

adb 127.0.0.1:6555

海马玩

adb 127.0.0.1:26744

adb 127.0.0.1:5555

御龙在天模拟加点器_模拟器链接911s5_双色球模拟摇号器

这些模拟器的连接过程均可参考上文中 的描述进行连接。

4. 连接原生模拟器(AVD)1)安装环境:

搭建 ,完成后在 中,选择 Tools > > AVD

2)创建模拟器:3)在连接模拟器:5. 连接模拟器的常见问题1)连接后部分模拟器显示黑屏

典型的例子是夜神模拟器,连接夜神模拟器容易出现黑屏的情况,此时我们需要在 之前点击右侧的下拉按钮,勾选上 use 选项后再点击 按钮连接,才能避免看到的屏幕是黑屏。

2)需勾选2个备选参数的模拟器

典型的例子是逍遥模拟器,在部分版本的模拟器上,可能勾选了 use 后依然连接失败,此时可以尝试再勾选 use adb 选项后再重新连接即可。

3)部分品牌模拟器出现无法点击的现象

部分品牌模拟器,可能出现无法正常点击的现象,可以尝试勾选 use 后再连接。

4)模拟器无法使用text()接口输入文字的情况

部分品牌模拟器(例如夜神),可能因为默认使用键盘输入,因此无法调用输入法,导致 text() 接口无法输入文字。可以先确认模拟器设置中,硬件-物理键盘 是否被勾选了, 取消勾选后再重新尝试即可。

如果依然失败(物理键盘选项被不断自动重置),可以打开右上角的模拟器设置,勾选软键盘选项后重试:

如果依然无法输入,可以考虑换用poco来输入(()),或是直接使用adb指令输入英文内容,详见 。

5)模拟器未安装.apk导致连接失败

6)模拟器自带的adb.exe版本与的adb.exe版本冲突

有时候我们尽管已经在模拟器的设置里开启了USB调试,手动安装了.apk,并且勾选了正确的参数,模拟器状态仍显示 ,或者连接时报 等,我们可以优先排查下是否 未统一 模拟器自带的adb和的adb版本,常见操作是用的adb文件覆盖掉模拟器的adb文件,需注意部分品牌模拟器的adb文件命名规则,替换后手动改成模拟器原有的命名规则。

另外,本地PC如有其他版本不统一的adb.exe也可能影响模拟器甚至本地真机的连接,请同学们一并统一成相同的版本。(目前自带的adb是40版本)

6. 在代码中连接模拟器1)在命令行传入模拟器设备参数

如果在命令行运行脚本时,连接的是模拟器设备,有一点需要注意,因为我们在连接时有可能勾选了Use 和Use ADB 这俩个选项,所以在命令行连接设备的时候,也需要把这俩个参数附加在设备字符串后面(使用了哪个参数就添加哪个参数):

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://:/模拟器端口号

其中,是adb 所在主机的ip,默认是本机127.0.0.1模拟器链接911s5,adb port默认是5037。

② 设备字符串后面跟了多个参数,需要用&&来连接,但是&这个字符需要转义才能够生效: 下改写成^&^&,MAC下改写成/&/& 。

2)在脚本编写模拟器的语句

如果不想在命令行中传入设备参数,我们也可以在脚本内编写语句来连接模拟器设备:

# -*- 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__)

这样在命令行运行脚本时,就不用添加连接模拟器设备的参数了。

3)在纯.py脚本传入模拟器设备参数

如果我们使用纯.py脚本模拟器链接911s5,在设备初始化时,也需要传入相应的模拟器设备参数:

# -*- 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",
    ])

标签:

评论留言

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。发布前请先查看评论规则:点我查看