AndroidVIewClient-如何在多个设备上同时运行python脚本

时间:2018-07-03 05:36:28

标签: adb androidviewclient

我创建了一个python脚本来完成设备的初始设置,并且能够在单个设备上运行它。我想在多个设备中运行相同的脚本。我已经提供了以下代码,请告诉我如何修改此代码以在两个或更多设备上运行它们。

import re
import sys
import time
import os

from PIL import Image

from com.dtmilano.android.viewclient import ViewClient
device, serialno = ViewClient.connectToDeviceOrExit()
vc = ViewClient(device=device, serialno=serialno)

vc.dump()
vc.findViewWithTextOrRaise(u'Continue').touch()##this line will click on Continue button.
print 'Continue button found and clicked'
vc.dump()
vc.findViewWithTextOrRaise(u'ABCCC').touch()##this line will click WiFi Ilaw SSID.
print 'SSID found and clicked'
vc.dump()
device.shell('input text *********')
vc.dump()
vc.findViewWithTextOrRaise(u'Connect').touch()##connect to wifi
time.sleep(20)
vc.dump()
device.shell('input text *********')##enter username
device.shell('input keyevent 61')
device.shell('input text *****')##enter password
vc.dump()
vc.findViewWithTextOrRaise(u'Continue').touch()##register the device
time.sleep(40)
vc.dump()
vc.findViewWithTextOrRaise(u'Do not restore').touch()##Do not restore
vc.dump()
vc.findViewWithTextOrRaise(u'Continue').touch()##Continue
vc.dump()
vc.findViewWithTextOrRaise(u'Continue').touch()##Account selection - click continue
vc.dump()
device.shell('input text *****') ##set screen pin
device.shell('input keyevent 61')
device.shell('input text *****') ##confirm pin
vc.dump()
vc.findViewWithTextOrRaise(u'Continue').touch()##Click Continue after entering pin
vc.dump()

1 个答案:

答案 0 :(得分:0)

如果您已经创建了脚本,则可以像这样创建bash脚本

#! /bin/bash

devices=(serialno1 serialno2 serialno3)
for s in "${devices[@]}"
do
    myscript "$s"
done

指定设备的序列号,并确保它们均已连接并显示在adb devices中。这将按顺序运行脚本。

另一方面,如果您要创建新的脚本,则可以尝试

$ culebra --unit-test --multi-device

生成一个可同时在所有设备上运行的测试用例。