首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用AndroidViewClient连接多个设备

如何使用AndroidViewClient连接多个设备
EN

Stack Overflow用户
提问于 2013-11-27 09:43:57
回答 1查看 1.3K关注 0票数 2

我想连接到两个多设备( device1,device2),使用AndroidViewclient实现测试用例的自动化,在测试用例中,我必须从device1拨打一个电话并在device2上接收呼叫。请帮助如何同时连接到两个设备。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-28 21:34:14

更新

culebra现在支持多设备模式,因此这个答案中描述的步骤不再必要。描述、示例和视频显示了在3种不同设备上同时运行的相同测试,可以在android: culebra多设备功能上找到。

回答

一如既往。我的建议是让库莱布拉创建您的脚本,然后您就可以修改它了。culebra将为一个设备生成一个脚本,然后您可以为另一个设备复制行,或者在需要时可以迭代一组设备。

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

代码语言:javascript
复制
$ culebra -VC -d on -t on -o myscript.py serialno1

修改后的myscript.py会是这样的:

代码语言:javascript
复制
#! /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
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20238844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档