a455642158
2013-01-10 07:24
采纳率: 100%
浏览 6.2k

monkeyrunner脚本运行一段时间后,与pc连接会有一些问题导致脚本异常该怎么办

脚本运行一段时间(尽可能长)只要与pc连接出现问题,例如设备offline了,那么monkeyrunner源码里的一些方法的那些异常都会报出来,如果我们的脚本里没有捕获这些异常,那么就会层层抛出直至脚本崩溃。目前还不会捕捉这些异常,希望有人解决过类似问题,帮我一把……谢谢。
目前报过的异常有:TimeoutException、AdbCommandRejectedException、Error sending touch event、Error sending press event等等,感觉都是连接有问题导致这些方法调用不了,抛出了源码里的那些方法对应的异常。
现在就想捕获异常,有异常就重启手机,重启后重新运行脚本,可是reboot重启手机的这个方法也是需要连接有效才能正常使用的,愁死人了。
还有一种情况就是脚本运行了很久后不动了,也没报异常,死活不往下运行了……

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • Billy_崔海斌 2013-01-10 09:44
    已采纳

    换手机,不要用一些不稳定的手机。正常手机不会运行monkey的时候突然offline的。

    是monkeyrunner,就是模拟真实手机用户点击应用的操作,每个内容到最后一步截图保存,有异常也截图保存,大概每次跑完有上千张图。然后重复……

    如果是这样,我就有点明白了,问题可能存在于截图上,截图是很耗费usb带宽的行为,而且截图本身并没有被系统特别严格压力测试过,在同时和mr运行的时候会导致adb的一些冲突,导致timeout或者中断的结果,我建议你这样做,理论上可以解决:
    1. 在每次循环运行完成后执行adb kill-service;adb start-service,这样重启adb连接
    2. 如果1不管用,就尽量缩减截图的次数,一点点缩减,直到稳定运行

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题