现在,我正在研究如何使用 MonkeyRunner 来测试win7中的android设备,现在我已经下载了最新的android sdk,并配置了所有的env
<登记/>
有一个android4.4.2电视机启用adbd,没有USB调试端口,但网络可用。我可以使用以下推荐将此设备与我的电脑中的adb连接:
adb connect 172.30.198.240.
然后我在命令窗口看到以下打印:
附加设备列表
172.30.198.240:5555设备
检查此连接是否成功。我们可以使用“ adb shell ”命令登录电视系统外壳。
我写了一个python脚本(名为test.py)来测试MonkeyRunner
来自com.android.monkeyrunner的导入MonkeyRunner,MonkeyDevice
device = MonkeyRunner.waitForConnection()#&lt; ---无法连接设备
如果设备不是None:
device.takeSnapshot()
完成上述操作后,我在win7命令窗口输入“monkeyrunner.bat test.py”。
代码在 MonkeyRunner.waitForConnection()处被阻止,adb服务器被终止。
我尝试了很多方法,但都失败了
的 Try1 :
输入 monkeyrunner.bat -s 172.30.198.240 test.py ,但再次失败。
的 Try2 :
我搜索了这个问题,有人说我们必须将adb端口设置为 12345 ,因此,我使用 adb tcpip 12345 将adb默认端口从5555更改为12345,
再次失败。
Try3 :修改脚本,为waitForConnection方法添加参数
device = MonkeyRunner.waitForConnection(5, "172.30.198.240:5555")
我的设备出现了nullpointer错误。
但是,如果我使用带有USB调试端口的手机连接我的电脑,上面的脚本运行正常
我不知道为什么,你能帮帮我吗?
非常感谢
答案 0 :(得分:0)
尝试AndroidViewClient/culebra可以连接到通过网络连接的设备(即电视),没有任何问题。
如果你想截取屏幕截图dump -f
(包中包含的工具之一)就可以了。
你的代码片段中还有一个拼写错误: MokeyRunner (缺少 n ),但我想你的真实代码中没有它或者您将收到例外。