monkeyrunner环境搭建
对android世界小白白的人儿,弄个monkeyrunner环境吭哧哧的费了大半天的劲,没办法,因为实在是对这方面一窍不通,名词都是一个个百度才略懂一二,既然这么辛苦费劲的才能弄好,怎么也得记录下来,免得下次又不会。
monkeyrunner是android sdk自带的测试工具,搭建monkeyrunner环境其实就是需要安装一个android sdk,当然也得有java环境jdk和python环境,此处只记录下我今天安装sdk的血泪史
1、安装sdk
先吐槽下走的弯路,去网上搜索monkeyrunner环境搭建,给出得一堆文档里都提到了android官网,http://developer.android.com/sdk/index.html#download,好吧,因为我实在是不善于翻墙,用尽各种办法都无法成功下载,后在360软件管家中搜索android sdk,下载了一个 sdk tools for android studio,没文化真可怕,安装好后进入tools目录输入monkeyrunner,提示Please use SDK manager and check if Android SDK platform-tools are installed,网上搜索答案,说是没有添加环境变量,尝试添加环境变量才发现安装目录下根本木有platform-tools,怎么破,怎么破,论坛、q群,各种咨询,终于才明白,sdk包弄错了,虽然没明白为啥错了,但终究是走上正道了
去网上百度搜索下载google android sdk ,下载后解压缩,里面有三个文件夹,因为jdk和eclipse我都有,所以直接将sdk复制到我指定的目录下

2、打开cmd,进入sdk\tools目录输入monkeyrunner

3、配置环境变量
现在在tools目录下输入monkeyrunner没问题,但是离开这个目录就会提示找不到这个命令,所以可以添加环境变量解决这个问题
环境变量-系统变量,添加一个新的变量名android,变量值D:\Program Files\Android\sdk\tools;D:\Program Files\Android\sdk\platform-tools;

打开系统变量中的path变量,将上面两个路径追加到后面保存

4、打开cmd,在当前目录输入monkeyrunner

5、简单示例
Monkeyrunner API主要包括三个模块
1)、MonkeyRunner:这个类提供了用于连接monkeyrunner和设备或模拟器的方法,它还提 供了用于创建用户界面显示提供了方法。
2)、MonkeyDevice:代表一个设备或模拟器。这个类为安装和卸载包、开启Activity、发送按键和触摸事件、运行测试包等提供了方法。
3)、MonkeyImage:这个类提供了捕捉屏幕的方法。这个类为截图、将位图转换成各种格式 、对比两个MonkeyImage对象、将image保存到文件等提供了方法。
运行monkeyrunner 脚本有两种方式,一种是在在CMD命令窗口直接运行monkeyrunner,另一种使用Python编写测试代码文件,在CMD中执行monkeyrunner xx.py运行
具体示例步骤:
1、cmd中启动已创建好的模拟器
emulator -avd test
2、编写python脚本,test.py
# 引入本程序所用到的模块
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage
# 连接手机设备
device = MonkeyRunner.waitForConnection()
# 截图
result = device.takeSnapshot()
# 将截图保存到文件
result.writeToFile('E:\me\monkey\Test1_001.png','png')
# 安装新的APP
device.installPackage('E:\me\MonTest.apk')
print ('Install Success!')
result = device.takeSnapshot()
result.writeToFile('E:\me\Test1_003.png','png') if device.removePackage('com.jh.APP304394.news'):
print ('Uninstall Success!')
else:
print 'Uninstall fail'
# 暂停10秒
MonkeyRunner.sleep(10)
result = device.takeSnapshot()
result.writeToFile('E:\me\monkey\Test1_002.png','png')
其中在使用removePackage(包名)时, 可通过aapt dump badging E:\me\monkey获得包名地址
3、cmd中执行测试脚本
monkeyrunner test.py,即可执行脚本中的相关操作
monkeyrunner环境搭建的更多相关文章
- 【MonkeyRunner环境搭建】
一.配置MonkeyRunner环境变量 1.首先下载一个AndroidSDK,在SDK的目录中的tools文件夹中,直接带有MonkeyRunner 2.打开MonkeyRunner的方式: |-- ...
- Android自动化学习笔记之MonkeyRunner:MonkeyRunner环境搭建
---------------------------------------------------------------------------------------------------- ...
- monkeyrunner之环境搭建及实例(三)
Monkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器. 一.Monkeyrunner简介 1.MOnkeyrunner相对Mo ...
- Monkeyrunner 简介及其环境搭建
Monkeyrunner是通过坐标.控件ID和控件上的文字操作应用的界面元素,其测试用例是用python写的,这样就弥补了monkey只有简单命令无法执行复杂用例的缺陷.Monkeyrunner采用的 ...
- monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建(四)
monkeyrunner脚本使用Python语法编写,但它实际上是通过Jython来解释执行. Jython是Python的Java实现,它将Python代码解释成Java虚拟机上的字节码并执行,这种 ...
- monkeyrunner之安卓开发环境搭建(一)
在学习monkeyrunner之前,让我们先搭建好eclipse安卓开发环境. 对于程序开发人员而言,eclipse并不陌生,它提供了一个非常广阔的平台来开发程序.同样也可以用它来开发android程 ...
- [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)
MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...
- 转载:monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建(四)
转载自:lynnLi 的monkeyrunner之eclipse中运行monkeyrunner脚本之环境搭建(四) monkeyrunner脚本使用Python语法编写,但它实际上是通过Jython来 ...
- Monkeyrunner测试环境搭建
Monkey手机APP压力测试,是对手机发送伪随机命令,对手机进行按键,触摸等操作,MonkeyRunner是对其发送重复操作的命令,是Monkey的进阶版,可以设置重复的操作或者是重现步骤等.相比较 ...
随机推荐
- 使用AFNetworking请求新浪微博数据接口出错解决办法
在使用AFNetworking请求新浪微博数据接口时会出这样的错误,如 这样的错误说明,AFNetworking无法处理这样的数据格式.所以,我们需要修改AFNetworking中的一些接收数据格式. ...
- Review1-11
泛型 泛型类 Public 类名 class<T>{} 泛型方法 Public static <T> 返回类型 方法名(<T> t){} 泛型类型必须使用引用类型 ...
- 用ADB(Android Debug Bridge)实时监测Android程序的运行
监控Android设备上程序的运行,需要ADB的配合,具体ADB工具的介绍以及命令选项可见博客: http://blog.csdn.net/mliubing2532/article/details ...
- C++输出中文字符(转)
C++输出中文字符 1. cout 场景1: 在源文件中定义 const char* str = "中文" 在 VC++ 编译器上,由于Windows环境用 GBK编码,所以字符串 ...
- TinyFox 部署在CentOS7 中测试使用
一:TinyFox介绍 TinyFox 是一款支持OWIN标准的WEB应用的高性能的HTTP服务器,是Jexus Web Server的"姊妹篇".TinyFox本身的功能是htm ...
- Android Studio 工程.GitIgnore应该忽略的文件
# Built application files *.apk *.ap_ # Files for the Dalvik VM *.dex # Java class files *.class # G ...
- codeblock编译Object-C
http://blog.csdn.net/ldl22847/article/details/7482971 http://www.cnblogs.com/qingyuan/p/3524791.html ...
- VS插件
VS插件 背景 前些天去考科目二,感觉经历了一场不是高考却胜似高考的考试(10年前的5分之差, 还是难以释怀)! 一行八人,就我学的时间最少(4天,8人一辆车),教练都觉得我肯定还得再来一次! ...
- clear:both后margin-top不起作用
如: <div style="float:left;">float:left</div> <div style="clear:both;ma ...
- 基于xml文件实现系统属性配置管理
文章标题:基于xml文件实现系统属性配置管理 . 文章地址: http://blog.csdn.net/5iasp/article/details/11774501 作者: javaboy2012 E ...