monkeyrunner之录制与回放(七)
monkeyrunner为我们提供了录制 回放的功能。
录制与回放使用原因:实际项目,需求变更频繁,且测试任务多,我们没有足够时间去写测试脚本,这是就可以进行录制脚本,然后通过回放,跑完需要的流程。
一、前提条件
1.Windows运行环境
2.android sdk安装并已配置好环境
3.手机或模拟器已连接电脑
二、MonkeyRecorder启动
1.方式一:直接在monkeyrunner交互命令行输入以下4条命令:
from com.android.monkeyrunner import MonkeyRunner as mr
from com.android.monkeyrunner.recorder import MonkeyRecorder 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代码如下:
import sys
from com.android.monkeyrunner import MonkeyRunner 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.
def process_file(fp, device):
for line in fp:
(cmd, rest) = line.split("|")
try:
rest = eval(rest)
except:
print ("unable to parse options")
continue if cmd not in CMD_MAP:
print ("unknown command: " + cmd)
continue CMD_MAP[cmd](device, rest) def main():
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.回放完成
monkeyrunner之录制与回放(七)的更多相关文章
- Android自动化学习笔记之MonkeyRunner:MonkeyRunner的录制和回放
---------------------------------------------------------------------------------------------------- ...
- 【monkeyrunner】monkeyrunner脚本录制和回放
脚本录制 1.连接你已经打开调试模式的ANDROID设备或模拟器,输入adb devices 2.运行录制脚本.在cmd窗口输入 monkeyrunner recorder.py #recorder. ...
- monkeyrunner脚本录制和回放下载
链接:https://pan.baidu.com/s/1Kye_E9u_WXeppFMlLhr_Cg 提取码:2coy
- Android自动化测试之MonkeyRunner录制和回放脚本
Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 andro ...
- Monkeyrunner 录制脚本&回放
本文主要解释如何使用monkeyrunner来实现脚本的录制和回放 一:准备条件 在电脑端配置 Android SDK环境 java 环境 下载好 SDK后添加环境变量 E:\android- ...
- IOS开发之小实例--创建一个简单的用于视频录制和回放的应用程序
前言:还是看了一下国外的入门IOS文章:<Create a Simple App for Video Recording and Playback>,主要涉及视频录制和回放的功能的基本实现 ...
- Unity-Animator深入系列---录制与回放
回到 Animator深入系列总目录 Animator自带了简单的动画录制,回放功能.但可惜的是不支持持久化的数据输出.因而不能作为录像保存 不过这种可以作为竞速,格斗类游戏在结束时经常出现的游戏回放 ...
- TinyTask Portable(录制和回放电脑操作过程)
一直想找个软件,可以回放自己或他人编码的过程.我认为,只有亲眼看到别人是怎么做的,才能更好的了解他人的思路. 虽然找到http://thecodeplayer.com/这个,但它只能回放它上面的代码, ...
- ROS_Kinetic_13 ROS数据录制与回放
ROS_Kinetic_13 ROS数据录制与回放 官网教程:http://wiki.ros.org/cn/ROS/Tutorials/Recording%20and%20playing%20back ...
随机推荐
- MS SQL验证字符串是否包含有大小写字母
昨晚有实现一个小功能,就是在MS SQL Server中,检查字符串是否包含有大小写字母.通常应用在字符串的复杂度. ) = N'SDFfgGRYJhhTYUJ' IF LOWER(@s) COLLA ...
- .NET正则表达式基础入门(三)
括号 正则表达式中的括号能将多个字符或者表达式当做一组,即将他们看成一个整体.这样量词就可以修饰这一组表达式.阅读本章前,建议先下载我于CSDN上传的示例代码,下载无需分数,下载链接. 1.分组 假设 ...
- 2>&1 linux
2>&1使用 2>&1使用 一 相关知识 1)默认地,标准的输入为键盘,但是也可以来自文件或管道(pipe |).2)默认地,标准的输出为终端(terminal),但是也可 ...
- qq空间返回顶部代码
点击这里体验效果 以下是源代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
- “.”(十六进制值 0x00)是无效的字符解决方案
自从我们的项目数据层从读取数据库改为读取接口服务后,经常会出现一些类似于的错误.我们的数据结构如下所示 <type><![CDATA[gp]]></type> &l ...
- 解决sea.js引用jQuery提示$ is not a function的问题
在使用sea.js的如下写法引用jQuery文件时, //main.jsdefine(function(require,exports,module){ var $ = require('jquery ...
- UIPickerView的使用(二)
上篇文章 UIPickerView的使用(一)学习了如何创建单列选择器,现在看一下如何创建多列选择器 多列选择器(以二列为例) 1.遵守协议和创建两个数据源 2.创建pickView 3.实现代理 / ...
- ArcGIS中的VBA修复
一直以来,ArcGIS10.1 的VBA安装后,菜单栏里也没相关菜单,听说是许可的问题,直到遇到这个问题才知道真正的原因. 由于项目需要使用了ArcGIS10.0, 不知道操作了什么,打开ArcMap ...
- CSS3 选择器——属性选择器
上一节在<CSS3选择器——基本选择器>中主要介绍了CSS3选择器的第一部分,这节主要和大家一起来学习CSS3选择器的第二部分——属性选择器.属性选择器早在CSS2中就被引入了,其主要作用 ...
- Android UI:ListView -- SimpleAdapter
SimpleAdapter是扩展性最好的适配器,可以定义各种你想要的布局,而且使用很方便. layout : <?xml version="1.0" encoding=&qu ...