android连接多个设备,如何使用AndroidViewClient连接多个设备

更新

库莱布拉现在支持多设备模式,因此不再需要此答案中描述的步骤.可以在android: culebra multi-device capabilities处找到描述,示例和视频,其中显示了在3个不同设备上同时运行的同一测试.

回答

一如既往.我的建议是让culebra创建您的脚本,然后您可以对其进行调整.

culebra将为一台设备生成脚本,然后您可以为另一台设备复制行,或者在需要时可以遍历设备列表.

这是生成的修改后的脚本(用设备的实际序列号替换serialno1和serialno2):

$culebra -VC -d on -t on -o myscript.py serialno1

修改后,myscript.py将如下所示:

#! /usr/bin/env python

# -*- coding: utf-8 -*-

'''

Copyright (C) 2013 Diego Torres Milano

Created on 2013-11-28 by Culebra v4.5.2

__ __ __ __

/ \ / \ / \ / \

____________________/ __\/ __\/ __\/ __\_____________________________

___________________/ /__/ /__/ /__/ /________________________________

| / \ / \ / \ / \ \___

|/ \_/ \_/ \_/ \ o \

\_____/--<

@author: Diego Torres Milano

@author: Jennifer E. Swofford (ascii art snake)

'''

import re

import sys

import os

try:

sys.path.append(os.path.join(os.environ['ANDROID_VIEW_CLIENT_HOME'], 'src'))

except:

pass

from com.dtmilano.android.viewclient import ViewClient

kwargs1 = {'verbose': True, 'ignoresecuredevice': False}

device1, serialno1 = ViewClient.connectToDeviceOrExit(serialno='serialno1', **kwargs1)

device2, serialno2 = ViewClient.connectToDeviceOrExit(serialno='serialno2', **kwargs1)

kwargs2 = {'startviewserver': True, 'forceviewserveruse': False, 'autodump': False, 'ignoreuiautomatorkilled': True}

vc1 = ViewClient(device1, serialno1, **kwargs2)

vc2 = ViewClient(device2, serialno2, **kwargs2)

vc1.dump(window='-1')

vc2.dump(window='-1')

no_id1_1 = vc1.findViewById("id/no_id/1")

print no_id1_1

no_id1_2 = vc2.findViewById("id/no_id/1")

print no_id1_2

这将同时连接到两个设备,获取转储,并在两个设备上找到一个ID为id / no_id / 1的视图,并打印结果.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值