MonkeyRunner 新手学 Monkeyrunner1-monkeyrunner 的录制以及回放

· 2015年06月17日 · 最后由 回复于 2015年10月12日 · 2627 次阅读

第一讲是 monkeyrunner 的录制和回放。

这篇文章里,我的 demo 都是用自己手机来操作的,因为 android 原生的模拟器实在太卡了,如果朋友们想学模拟器的操作请自行百度。

  1. 第一步:大家玩 android 测试,环境 sdk,ADT 不用我说了吧,都去部署好,之前的博客我也有写环境变量,注意大家最好去配完整,shell 端就不用自己找系统路径了,http://www.cnblogs.com/wyx123/articles/4133001.html

  2. 用 usb 连上你的手机,注意几个情况:

  3. 如果手机只显示,
    估计是你 usb 没接好,再去检查检查有没有插好

    1. 有时候我们会遇到 port5037 被占用;记住 5037 是 adb 的默认端口,这种情况是你的手机助手或者其他进程占用了它,解决这个问题两种解决方式:
    2. 一种常见的解决方法是:找出占用 5037 端口的程序,然后杀掉它;
    3. 使用:netstat -aon | findstr 127.0.0.1:5037 来找到占用 5037 的进程 ID;
    4. 使用:kill -f pid 去杀掉它们。(或者在任务管理器 -进程中,结束进程。PS:需要事先在 windows 任务管理器-查看-选择列,勾选 PID)
    5. 自己配置 adb server 端口,使用一个生僻的值。很简单,只要在系统环境变量中定义 ANDROID_ADB_SERVER_PORT 的值即可。最好选择一个 5 位数的端口号(10000 ~ 65535),不易重复。 7.win 下只要在环境变量中增加一个 ANDROID_ADB_SERVER_PORT ,值填你自己定义的端口。
    6. linux 下只要 export $ANDROID_ADB_SERVER_PORT = 自定义端口,即可。
    7. 这时打开一个命令行,输入 adb devices,看看是不是在新的端口上启动了啊?

  4. 这是我的真机了,左边是名称,右边是 device 状态,为已连接

  5. 预热部分完成,正式进入 monkeyrunner 的录制

    1. monkeyrunner 这个 monkeyrunner_recorder.py 文件
    2. 请看源代码,用 py 写的,大家这里注意缩进,是四个空格,十分严格
    3. 下载地址:http://yunpan.cn/cQSFXA98E3gxR 访问密码 2280
    4. 大家启动好这个界面,就可以真机乱点啦哈哈,右侧的代码是你的操作步骤。自己去试试操作,这里详细说的是导出你的操作步骤:
    5. 点击 Export Actions,于是会跳出啦,然后选择一个文件夹进行保存
    6. 如图:
  6. 回放我的操作脚本
    得有 monkey_playback.py 这个文件,# 下载地址:http://yunpan.cn/cQSF95xE2XSwX 访问密码 568
     

    1. 最后在 shell 端敲
    2. 具体观察自己手机是不是在自动跑操作了
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 23 条回复 时间 点赞

感谢分享,一直都想玩 monkeyrunner ,但一直都没时间去玩。。。

不过排版能否调整一下?不知道你用的是什么 markdown 工具,现在看到的每一行前面都有个无序列表的符号,反而真正的要点变得不突出了。

文章的要点最好先用大标题,然后小的列表再采用列表格式。

另外, markdown 对段落前后是否是空行、符号前后是否为空格比较敏感,所以最好养成分段的时候段落之间空一行的习惯。

详细的分享是好的,但是排版不专业的话可能会有一部分人读起来不爽。

#3 · 2015年06月17日 Author

#1 楼 @chenhengjie123 排版可以的,下班之后我再看看 markdown。最近离职,可能要先弄离职的事情

期待继续更新,谢谢!~

等你 md 弄好,给你加个精,期待后续

#5 · 2015年06月17日 Author

#4 楼 @monkey 恩,md 我会去学的

#5 楼 @mads 看着你写的这些回想起了以前学习 monkeyrunner 的经历,谢谢分享。

#6 楼 期待继续更新~
@yuwuhen333 我也想起我当时玩 MR 的时候了。。最早在 testerhome 发表的大多还是跟 MR 相关的。。

mads 你的排版真是鬼斧神工啊!

#9 · 2015年06月17日 Author

#8 楼 @lihuazhang 什么鬼

#9 楼 @mads 。。。。你快改。。。。。。

#11 · 2015年06月17日 Author

#10 楼 @monkey 在上班。。回家看看。。。上班时候该帖子影响不好

搞到 Sublime 里搞就好了~

  • -确实这个排版影响第二个脚本的正确性了

感谢。

@mads 你这个排版肯定不行啊, 连 python 的 indent 都没了。

#9 楼 @mads 大哥。。。你啥时候改呀

http://yunpan.cn/cQSF95xE2XSwX 后面的访问密码是错误的

楼主,第二个文件的访问密码不对啊,求正确密码

请问楼主,我的代码运行的时候一直提示 NameError: name 'self' is not defined,是什么原因呢?self 不是自己调用自己吗?
以下是我的脚本链接,求解答。https://testerhome.com/topics/3091

@mads 请问如何让录制下来的坐标进行循环?

#23 · 2015年10月12日 Author

#22 楼 @v_clinwu 循环干嘛。。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册