MonkeyRunner可以录制和回放脚本

前置条件:

电脑连接手机,输入adb devices 看看返回是否手机设备列表(我是真机,模拟器也可以)

配置好安卓sdk和Python环境

step:

1、启动录制脚本:cmd,输入命令

monkeyrunner  monkey_recorder.py

会弹出一个MonkeyRecord窗口界面该窗口的功能:

注意:如果录制时候,点击,发现设备和窗口不同步,ctrl+c,输入y,再次输入录制命令(黑屏不好使)

  • 1、可以自动显示手机当前的界面
  • 2、自动刷新手机的最新状态
  • 3、点击手机界面即可对手机进行操作,同时会反应到真机,而且会在右侧插入操作脚本
  • 4:、wait: 用来插入下一次操作的时间间隔,点击后即可设置时间,单位是秒

Press a Button:用来确定需要点击的按钮,包括menu、home、search,以及对按钮的press、down、up属性

Type Something:用来输入内容到输入框

Fling:用来进行拖动操作,可以向上、下、左、右,以及操作的范围

Export Actions:用来导出脚本,不需要后缀名,也可以添加后缀名.mr

Refresh Display:用来刷新手机界面,估计只有在断开手机后,重新连接时才会用到

以学院的app为例,生成的脚本后缀为mr

生成的monkey脚本如下:

demo.mr

WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TYPE|{'message':'wangqiang_cyou',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TYPE|{'message':'',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
DRAG|{'start':(,),'end':(,),'duration':1.0,'steps':,}
WAIT|{'seconds':2.0,}
DRAG|{'start':(,),'end':(,),'duration':1.0,'steps':,}
WAIT|{'seconds':2.0,}
DRAG|{'start':(,),'end':(,),'duration':1.0,'steps':,}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':,'y':,'type':'downAndUp',}
WAIT|{'seconds':2.0,}

生成的脚本建议放在sdk的tool目录下:

2、回放脚本,cmd输入命令:

monkeyrunner  monkey_playback.py demo.mr

如果遇到不能回放的问题,需要关闭当前录制时的cmd窗口,重新打开cmd窗口执行回放操作,或者ctrl+c,重新输入命令即可(黑屏好像不好使,我自己试验的)

备注:以上路径都是绝对路径,录制后的脚本可以进行二次更改,而且每一步操作需要有时间间隔,这样才能保证测试的正确性。

MonkeyRunner之MonkeyRecorder录制回放脚本(亲测可正常运行)的更多相关文章

  1. MonkeyRunner之MonkeyRecorder录制回放脚本

    MonkeyRunner强大的功能之一便是允许用户自由录制需要的脚本,录制和回放需要两个脚本文件 monkey_recorder.py和monkey_playback.py 首先来看 monkey_r ...

  2. MonkeyRunner之小白如何使用MonkeyRecorder录制回放脚本

    之前摸索了好久.学习Python语言.安装工具.拉拉溜溜也慢慢地一点点进步.每天就疯狂的上网找资料.虽然大牛们写的很详细.但是自己就是笨的不知怎么做.最后找了一篇文章,真的就是万事俱备只欠东风的感觉, ...

  3. LoadRunner录制回放脚本RecContentType=application/json报错

    今天做一个新项目,项目系统的框架是用SSH,特意查看了一下项目源码,用的ajax提交比较多,主要的问题是该系统对IE(8~10)浏览器都不兼容,无法进行录制. 是问题,总有解决的办法! 我本机为Loa ...

  4. ubuntu-18.04 设置开机启动脚本-亲测有效

    ubuntu-18.04不能像ubuntu14一样通过编辑rc.local来设置开机启动脚本,通过下列简单设置后,可以使rc.local重新发挥作用. 2.将下列内容复制进rc-local.servi ...

  5. Linux下通过crontab及expect实现自动化处理 --亲测可用

    #!/usr/bin/expect -fspawn /home/scripts/bckup.shexpect "Enter password: "  send "WWQQ ...

  6. Android自动化测试之MonkeyRunner录制和回放脚本

    Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 andro ...

  7. MonkeyRunner Mac环境 录制脚本和回放 批量回放

    1.MonkeyRunner是AndroidSDK自带的一个东西,在SDK目录中的tools\bin文件夹中 2.配置环境变量 编辑环境变量:打开终端输入:open ~/.bash_profile 将 ...

  8. 【Android测试】【第十节】MonkeyRunner—— 录制回放

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4861693.html 前言 在实际项目进行过程中,频繁的需 ...

  9. 将caj文件转化为pdf文件进行全文下载脚本(ubuntu下亲测有用)

    最近ubuntu下caj阅读器,突然崩掉了,而偏偏要准备开题,在网上搜索原因未果,准备放弃时候,突然在网上看到一个脚本,说是很好用,可以在指定页面将caj文件转化为pdf文件,亲测有用,这里直接给出脚 ...

随机推荐

  1. (Arrays.sort() 或 map) Ignatius and the Princess IV hdu1029

    Ignatius and the Princess IV 链接:http://acm.hdu.edu.cn/showproblem.php?pid=1029 借鉴链接:https://blog.csd ...

  2. 谨记:new Date()在IOS中的坑

    第一次遇到,记录一下 要创建一个指定时间的new Date对象时,通常的做法是: new Date("2018-04-27 11:11");然后就可以根据这个获取年月日等信息 这种 ...

  3. ElasticSearch 之 dis_max tie_break的应用

    1. 插入数据 PUT /my_index/my_type/ { "title": "Quick brown rabbits", "body" ...

  4. transform顺序浅谈

    有用过transform的小伙伴们可能都会遇到一些问题,发现transform得到的结果往往不是我们所想的 例如scale(2,1) rotate(30deg) ,我们预想的结果是一个先放大的元素,然 ...

  5. search 重要文件路径 搜索【原】

    hosts文件路径 C:/WINDOWS/system32/drivers/etc/ tnsnames.ora文件路径 C:/oraclexe/app/oracle/product/11.2.0/se ...

  6. webuploader 百度上传,一个页面多个上传按钮

    需求:列表里每条数据需加文件上传 html: <div> <ul class="SR_wrap_pic"></ul> <button ty ...

  7. Java入门系列(十二)Java反射

    Why--指的是为什么做这件事,也既事物的本质. 反射之中包含了一个“反”的概念,所以要想解释反射就必须先从“正”开始解释,一般而言,当用户使用一个类的时候,应该先知道这个类,而后通过这个类产生实例化 ...

  8. android 使用get和post将数据提交到服务器

    1.activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android& ...

  9. JavaScript之DOM概念

    一.DOM概念 1.DOM是什么? 1.1 起源.DOM起源于Netscape与Microsoft 公司的DHTML(动态HTML). 1.2 名词解释.Document Object Model,文 ...

  10. luogu P3960 列队

    传送门 因为\(Splay\)可以\(O(logn)\)维护区间,所以直接对每一行维护第一个元素到倒数第二个元素的\(Splay\),最后一列维护一个\(Splay\),每次把选出来的点删掉,然后把那 ...