Appium 关于 appium 多设备支持问题

朱光精 · 2017年09月13日 · 最后由 朱光精 回复于 2017年09月15日 · 2278 次阅读

我查看了社区里的 demo,在连接 app 上还是不知道怎么调通,下面是我的代码

代码:

 -*- coding: utf-8 -*-
from multiprocessing import Pool
import threading
import os
from appium import webdriver

def test():
    port_list=['4723','4724']
    for port in len(port_list):
        driver = webdriver.Remote('http://127.0.0.1:%s/wd/hub' % port, desired_caps)
        print "启动APP成功"

desired_caps = [{'deviceName': '8cfd4d47', 'platformName': 'Android', 'browseName': '', 'Version': '7.0',
                'appPackage': 'com.zhihu.android', 'appActivity': 'com.zhihu.android.app.ui.activity.MainActivity'},
                {'deviceName': 'Y9K0214C22026619', 'platformName': 'Android', 'browseName': '', 'Version': '6.0',
                'appPackage': 'com.zhihu.android', 'appActivity': 'com.zhihu.android.app.ui.activity.MainActivity'}]
pool=Pool(len(desired_caps))
pool.map(test(),desired_caps)
pool.close()
pool.join()

问题:

请教下大神,我这里要怎么调才能够支持多设备,我现在用了两台设备来测试

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 4 条回复 时间 点赞

我也是新手,但是看了楼主的代码,感觉代码是不是有一点问题啊?
1 . for port in len(port_list): 这里使用的是 len,那么 port 的值应该就是 0~len-1,不是楼主的 port_list 中的值了

下面这些代码我不懂,请教楼主是什么意思呢?也学习一下(微笑)

donly 回复

楼上发现 bug 了,下面那段代码是开多进程的意思,我是不明白为何 close 之后才 join,进程都关了,还怎么运行

terrychow 回复

额,这个不是 bug,我的问题已经自行解决了

donly 回复

根据设备数开启相对应数量的进程,然后去执行用例

朱光精 关闭了讨论 09月15日 14:21
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册