问题
版本信息:
系统:windows 10
python : 3.6
appium : 1.22.3 (npm install -g appium安装)
nodejs: v16.15.0
现象
主要代码如下
# 启动appium服务
cmd_start = 'start appium -a 127.0.0.1 -p %d -bp %d' % (self.appium_port, self.appium_b_port)
res = os.popen(cmd_start)
self.driverUrl = 'http://127.0.0.1:%d/wd/hub' % self.appium_port
# 连接设备启动app
caps = dict()
caps["platformName"] = "Android"
caps["platformVersion"] = "10"
caps["automationName"] = "UiAutomator2"
caps["systemPort"] = self.appium_s_port
caps["deviceName"] = self.device
# caps["deviceName"] = 'PBEM00'
caps["appPackage"] = "com.sankuai.meituan"
caps["appActivity"] = "com.meituan.android.pt.homepage.activity.MainActivity"
caps["noReset"] = True
caps["noSign"] = True
caps["fullReset"] = False
caps["waitForIdleTimeout"] = 0
self.driver = webdriver.Remote(self.driverUrl, caps)
我的电脑连接了2个安卓设备
> adb devices -l
List of devices attached
10.5.13.233:5678 device product:HLK-AL00 model:HLK_AL00 device:HWHLK-H transport_id:24
10.5.13.38:5678 device product:PBEM00 model:PBEM00 device:PBEM00 transport_id:17
传入的 deviceName
是 10.5.13.38:5678
,执行代码后,根据appium的日志,他自己也发现了2个设备,但它又重新指定了设备到 10.5.13.233:5678
,导致后面的代码执行出问题,如果我只连接一个设备就是正常的。
哪位大佬知道原因的,麻烦告知一下原因,谢谢
已解决
翻了下官网的文档: https://appium.io/docs/en/writing-running-appium/caps/index.html
被之前百度出来的误导了,caps[“deviceName”] 这个不是指定设备,是设备类型
想要指定设备得指定 udid
caps["udid"] = self.device