一、启动多个Android session
| 端口 | 释义 | 示例 |
|---|---|---|
| -p | Appium 服务端口 | 默认端口为4723,可以开启多个不同端口号的appium服务:-p 4723
|
| -U | 设备 ID | 例如:-U deviceID
|
| -bp | Appium bootstrap 端口 | 例如:-bp 4823
|
只要你的Appium服务端口与 Appium bootstrap的端口在 0到 65536 之间,且端口号并不相同,这样两个Appium 服务器就不会去监听同一个端口。确保通过-u参数标志的 id与对应的设备id 是一致的。这就是 Appium 能知道设备之间是如何通信的原因,因此必须保证参数准确无误。
1、启动session
appium -a 127.0.0.1 -p 47XX -bp 48XX -U udid --pre-launch --session-override
2、配置desired_caps
systemPort用于连接appium-uiautomator2-server 或 appium-espresso-driver。一般默认为 8200,appium-uiautomator2-server选择 8200 到 8299 中的一个端口,appium-espresso-driver 选择 8300 到 8399 之间的 8300。
多设备并行时,必须设置systemPort,避免端口冲突
desired_caps['platformName'] = 'Android' # 设置平台
desired_caps['automationName'] = 'UiAutomator2'
desired_caps['systemPort'] = 82XX
3、访问appium服务
driver = webdriver.Remote('http://127.0.0.1:44XX/wd/hub',desired_caps)