appium执行iOS测试脚本并发问题

时间:2022-04-19 02:39:10

appium1.4.X+iOS9.X+xcode7.X:

  appium1.4.x+iOS9.x+xcode7.x,这一整套的配置做移动端自动化测试是测试人员常用的测试框架。关于,这一套测试框架的并发问题:基于mac端,启动多台appium服务器会导致appium的运行出错。这是因为多个appium_server的临时文件存放在同一个地址的原因。这个问题的解决思路很简单。只要在每个appiuim_server启动的时候指定一个appium缓存文件存放地址即可。

  例如:

    第一台appium_server启动命令:appium -a 127.0.0.1 -p 4723 -bp 4724 --tmp /usr/desktop/liujian1

    第二台appium_server启动命令:appium -a 127.0.0.1 -p 4725 -bp 4726 --tmp /usr/desktop/liujian2

appium1.6.X+iOS10.X+xcode8.X:

  appium1.6.X+iOS10+xcode8.X,对于iOS10.X的版本来说,苹果公司在测试框架上有了很大的改变。苹果公司放弃了原来的uiautomator那一套东西,改用xcuitest来进行自动化测试。这个重大的改变,导致了基于uiautomator体系的appium测试框架做出了调整。为了适应xcuitest测试框架,appium引进了facebook开发WebDriverAgent(简称wda)。wda在进行WebDriver通信的时候分别指定电脑端和手机端的端口,都是8100。导致了,在mac上同时运行多台appium_server服务的时候会出现异常。这个问题的解决思路是在运行脚步里指定不同的wda端口:

  例如:

    第一个脚本参数setCapability("wdaLocalPort","端口一")

    第二个脚本参数setCapability("wdaLocalPort","端口二")

    注意:两个端口不能相同。

tips:

  如果Android7在做并发的时候如果出现端口异常,指定参数setCapability("systemPort","端口号")