定位不到元素原因分析
问题在于元素定位使用的是 uiAutomator2,其实在一代的uiautomator时需要设置不同的:port, bootstrap.
更新换代后的uiautomator2则需要不同的:port, systemport. ,但是这不可避免的出现了多台设备多线程时,出现systemport端口发生冲突,比如设备1和设备2的systemport端口号都是默认的8200。
官方给出的说明如下:
systemPort used to connect to appium-uiautomator2-server, default is 8200 in general and selects one port from 8200 to 8299. When you run tests in parallel, you must adjust the port to avoid conflicts.
翻译:
systemPort用于连接到appium-uiautomator2-server,通常默认为8200,从8200到8299选择一个端口。当并行运行测试时,必须调整端口以避免冲突
给大家推荐一个软件测试技术交流群:810119819 群友福利免费领取
解决方法
使用管理员身份运行启动appium Desktop, 请使用管理员身份运行,否则经常遇到提示。
–override’ exited with code 1
多设备并行时,uiautomator第一代需要设置不同的:port, bootstrap.uiautomator2则需要不同的:port, systemport.
Appium多线程并发,设备无法定位元素怎么办?