1,appium 已经启动个端口服务(已完成)
2,appium 已经通过不同的端口连接到多个设备(已完成)
3,只有一套测试脚本
4,开启多线程后,如何给脚本指定不同的 driver ?
整个的设计逻辑是:
已经启动了 appium 的多个服务,分别对应 4723,4724,4725 端口
启动脚本:

uri = [uri1,uri2,uri3]  #分别对应不同appium服务,以appium服务端口区分,'http://127.0.0.1:4723/wd/hub','http://127.0.0.1:4724/wd/hub','http://127.0.0.1:4725/wd/hub'
desired_caps = [desired_caps1,desired_caps2,desired_caps3]  #对应不同的设备,主要以系统版本区分

tt = []

for i, desired_cap in desired_caps.emurate():
      driver = webdriver.Remote(uri[i], desired_cap)
      t = threadding.Thread(target=run)
      t.start()

def run():
      # 执行测试脚本类

run 方法中去执行脚本
问题是:如何将 driver 引入到测试脚本中?
有一些思路:将 driver 写成线程局部变量,然后再各个测试脚本中去引入,没去实际操作过,不知道可不可行,大神来解答一下
在启动脚本中:

t_thread = threading.local()
t_thread.deiver = driver

测试脚本 1,

import t_thread
driver = t_thread.driver

测试脚本 2

import t_thread
driver = t_thread.driver

......


↙↙↙阅读原文可查看相关链接,并与作者交流