monkeyrunner为我们提供了录制 回放的功能。

录制与回放使用原因:实际项目,需求变更频繁,且测试任务多,我们没有足够时间去写测试脚本,这是就可以进行录制脚本,然后通过回放,跑完需要的流程。

一、前提条件

1.Windows运行环境

2.android sdk安装并已配置好环境

3.手机或模拟器已连接电脑

二、MonkeyRecorder启动

1.方式一:直接在monkeyrunner交互命令行输入以下4条命令:

from com.android.monkeyrunner importMonkeyRunner as mrfrom com.android.monkeyrunner.recorder importMonkeyRecorder as recorder

device= mr.waitForConnection(5,'127.0.0.1:62001')

recorder.start(device)

注意:monkeyrunner交互命令行,即在cmd中输入monkeyrunner

2.方式二:将以上代码写到python脚本中,并命名monkey_recorder.py,cmd命令行中输入monkeyrunner monkey_recorder.py,进行打开

注意:这里的monkey_recorder.py需要拷贝到和monkeyrunner同级目录下,即sdk/tools

三、录制

1.工具简介

2.录制

MonkeyRecorder启动后,界面上显示的内容就是已连接的手机或模拟器当前屏幕的内容。

用鼠标点击这个界面,点击的坐标就会被记录下来,同时结合MonkeyRecorder界面顶部的按钮,即可进行录制。

如下图,我对app登录界面,进行如下操作:

1)鼠标点击“手机号码”输入框

2)“手机号码”输入框中输入登录用的手机号码

3)等待2秒

4)鼠标点击“密码”输入框

5)“密码”输入框中输入登录用的密码

6)等待2秒

7)鼠标点击“登录”按钮

四、回放

录制完成后,就可以进行回放,操作步骤如下:

1.点击Export Actions,导出我们录制时的操作,在本地生成一个文件,并根据需要命名:xxx.mr

2.将录制的文件(假如命名为test.mr),拷贝到和monkeyrunner同级目录下,即sdk/tools

3.将回放的脚本monkey_playback.py,同样保存在sdk/tools下;

monkey_playback.py代码如下:

importsysfrom com.android.monkeyrunner importMonkeyRunner

CMD_MAP={"TOUCH": lambda dev, arg: dev.touch(**arg),"DRAG": lambda dev, arg: dev.drag(**arg),"PRESS": lambda dev, arg: dev.press(**arg),"TYPE": lambda dev, arg: dev.type(**arg),"WAIT": lambda dev, arg: MonkeyRunner.sleep(**arg)

}#Process a single file for the specified device.

defprocess_file(fp, device):for line infp:

(cmd, rest)= line.split("|")try:

rest=eval(rest)except:print ("unable to parse options")continue

if cmd not inCMD_MAP:print ("unknown command:" +cmd)continueCMD_MAP[cmd](device, rest)defmain():

file= sys.argv[1]

fp= open(file, "r")

device=MonkeyRunner.waitForConnection()

process_file(fp, device)

fp.close();if __name__ == "__main__":

main()

monkey_playback.py

4.在cmd命令行中输入命令:monkeyrunner monkey_playback.py test.mr,运行

5.回放完成

python屏幕录制与回放_monkeyrunner之录制与回放(七)相关推荐

  1. python屏幕录制与回放_Python实现屏幕录制功能的代码

    前段时间做视频时需要演示电脑端的操作,因此要用到屏幕录制,下载了个迅捷屏幕录制,但是没有vip录制的视频有水印且只能录制二分钟,于是鄙人想了下能不能通过万能的python来实现呢?经过一晚上的尝试发现 ...

  2. python 屏幕录制_Python实现屏幕录制功能的代码

    前段时间做视频时需要演示电脑端的操作,因此要用到屏幕录制,下载了个迅捷屏幕录制,但是没有vip录制的视频有水印且只能录制二分钟,于是鄙人想了下能不能通过万能的python来实现呢?经过一晚上的尝试发现 ...

  3. python 鼠标轨迹录制_按键鼠标轨迹录制大师

    专业高效的Windows鼠标键盘录制工具 一切只为提升效率,专注专业 http://mouse.downjia.com/ 智能操作 让乏味的重复的操作变的简单,有趣,精彩..... 操作技术 简单高效 ...

  4. C#屏幕录制图像处理:(包含鼠标图像录制)

    C#屏幕录制图像处理:(包含鼠标图像录制) using System; using System.Collections.Generic; using System.ComponentModel; u ...

  5. python 录制web视频教程_如何录制网页上的直播视频?请尽量详细一点,最好是完整教程【】...

    怎么录制网页上的直播视频? 屏幕录像软件虽然能录制任何视频等内容,但是效果非常不理想,建议等以后在下载别人制作好的视频吧!临时没有太好的软件! 如何录制网页上的直播视频?请尽量详细一点,最好是完整教程 ...

  6. 屏幕录制软件怎么用?录制电脑屏幕的技巧

    屏幕录制软件怎么用?随着屏幕录制软件的需求越来越高,很多小伙伴都会有或多或少的电脑录屏需求,不管是生活还是工作都经常需要使用到屏幕录制软件.例如上网课时想把老师讲解的内容录制下来以供后续温习:开会时将 ...

  7. 软件测试 录制回放,软件测试之录制与回放.ppt

    文档介绍: 录制回放自动化测试录制和回放测试概念所谓的"录制-回放"技术,就是先由手工完成一遍需要测试的流程,同时由计算机记录下这个流程期间客户端和服务器端之间的通信信息,这些信息 ...

  8. android 横屏录制视频,安卓手机如何录制屏幕视频?一招结束录屏的烦恼

    随着手机功能的越来越强大,大大小小的事情都可以在手机上完成,导致我们的生活的吃喝玩乐都用到手机,那么我们有时会在手机上刷到一些好玩的视频,想把它保存下载,但由于无法下载,所以我们就想了各种办法,最后采 ...

  9. 有没有高清录制视频软件?如何录制清晰的视频?

    案例:录屏画质模糊影响观看怎么办? [我把我在电脑上的操作录制了下来,录屏虽然可以看清楚操作的步骤,但是画质比较模糊,看起来很不舒服.有没有什么方法可以录制清晰画质的视频?] 当今数字化时代,视频已成 ...

最新文章

  1. 逻辑设计中需要显式地使用IBUF以及OBUF类似的原语吗?
  2. 软件原型设计工具Axure RP安装教程
  3. Android中怎样调用自带的Base64实现文件与字符串的编码和解码
  4. html2个表单,单个html angular2中的多个表单
  5. 文献阅读6-Entity-Relation Extraction as Multi-turn Question Answering(实体关系联合抽取,层次标签依赖关系,multi-turn QA)
  6. Python语言中 del函数和insert函数用法
  7. GNOME界面简单使用
  8. Oracle 升级(10.2.0.1 -- 10.2.0.4) 包含升级包
  9. 大话信号多久可以移服务器,关于第十届服务器联赛规则及日期详细介绍(二)...
  10. 动态分配IP之dhcp服务
  11. 005 Aspectj的引入
  12. ffmpeg webm 提取_使用ffmpeg转换webm格式
  13. 吉珠计算机科学 2a,2B院校 ∣ 让数据告诉你,考上插本难不难?
  14. 云控系统搭建需要那个运行商网线
  15. 裁员、转型、突围,两图带你看懂交易所困局
  16. multisimbcd码_8421BCD码加法器报告1
  17. 腾讯地图获取所选区域坐标
  18. python成功安装cartopy之后,调用crs时却出现错误,如何解决
  19. python爬取微博图片教程_Python爬取微博实例分析
  20. 王牌战争文明重启服务器维修中,王牌战争:文明重启在哪下,为什么王牌战争:文明重启进不去...

热门文章

  1. springboot中maven文件pom.xml的<resource>下的<includes>和<excludes>
  2. Mac安装node遇到的问题记录
  3. 双线性变换 matlab,matlab和双线性变换的滤波器设计.doc
  4. 网络爬虫之Selenium(可视化)爬虫
  5. comtrade文件C语言,COMTRADE录波文件资料格式定义.doc
  6. Bowtie2去除污染的使用方法
  7. 模拟根据后端返回列表数据,先包装成树结构,包装路由数据格式。
  8. qrcode.vue插件使用方法
  9. Linux IPC 进程间通信——消息队列message
  10. Linux下矢量字库应用