我正在使用Appium在Android上自动执行我的UI测试。
我的计算机连接了物理设备,Android Studio启动了模拟器:
$ adb devices
List of devices attached
0831bd3b21320609 no permissions (My phiscal Nexus 5)
emulator-5554 device (My Emulated device)
当我启动Appium并运行我的测试时,它会拿起我的物理设备。 Appium日志:
[debug] [ADB] Running '/home/babken/android-sdk/platform-tools/adb' with args: ["-P",5037,"-s","0831bd3b21320609","wait-for-device"]
[debug] [ADB] Restarting adb
[debug] [ADB] Killing adb server on port 5037
[debug] [ADB] Getting connected devices...
[debug] [ADB] 2 device(s) connected
...
测试挂起,我收到错误,因为它连接到错误的设备。
我的appium功能中有这个:
desired_caps = {
'platformName': 'Android',
'deviceName': 'Android Device',
'autoGrantPermissions': True,
'app': apk_location,
'newCommandTimeout': 36000,
}
我知道我可以将udid
功能设置为emulator-5554
,但模拟器的名称可以更改。
作为一种解决方法,我也可以关闭我的Nexus或关闭USB调试,但这对我来说不是解决方案。
答案 0 :(得分:0)
您是否尝试过'avd'功能?
像
这样的东西<img src="data:image/png;base64,--your 64--" alt="Red dot" />
在网站上,他们举了一个例子:api19,所以也许你可以指定你的模拟器API版本而不是名字。 (我没试过,但可能会奏效) 而且你应该输入deviceName'Android Emulator'