【转】Monkeyrunner测试1——Monkeyrunner的使用
Monkeyrunner的使用
一.终端输入单行命令行实现
1. 开启android 模拟器
(1) 用Eclipse打开andorid的模拟器
(2) 在CMD中用andorid命令打开模拟器
定位到android SDK的路径下的tools目录,运行如下命令:
D:\android \tools>emulator-avd AVD2.3.3
“AVD2.3.3”是模拟器的名字,这个是自己命名的,用的时候需改成实际的名字
注:运行monkeyrunner之前必须先运行相应的模拟器,不然monkeyrunner无法连接设备。
2. 进入shell命令交互模式
再打开另一个CMD窗口,还是定位到tools目录,输入命令"monkeyrunner",回车
注: ctrl+d退出
3. 导入monkeyrunner所要使用的模块
from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice 回车
4. 把模拟器和monkey绑定
device = MonkeyRunner.waitForConnection()
注:绑定后在monkeyrunner的操作等同于在模拟器的操作
5. 安装一个apk应用包
device.installPackage("../../JavaWorkspace_Android/main_demo_app/bin/main_demo_app.apk")
注:成功了会返回true。如果没有返回true,一般都是语法错误或者你传入的相对路径有问题。
注:注意路径
6. 启动其中的任意activity了
device.startActivity(component="org.athrun.android.app/org.athrun.android.app.MainActivity")
注:只要传入package和activity名称即可
7. 给模拟器发送更多的操作,如模拟任何按键时间和滚动等,并且可以截图
二.运行python文件实现
1. 编写.py文件
将从方法一步骤3开始的命令写成.py文件,如a.py
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
device = MonkeyRunner.waitForConnection()
device.installPackage("../main_demo_app.apk")
device.startActivity(component="org.athrun.android.app/org.athrun.android.app.MainActivity")
……
2. 运行.py文件
打开CMD窗口,定位到tools目录,输入命令"monkeyrunner a.py",回车
三.在eclipse中实现
1.安装Python插件及配置
1.1 eclipse安装Python插件
Eclipse环境,点击help->Install New Software, 在弹出界面中选择add按钮:Name随便起,Location: http://pydev.org/updates(连不上的话改为https)。等会之后,选择PyDev下的PyDev for Eclipse,别的都不要选,否则依赖检查那关过不去。一直点“下一步”,遇到弹出询问你是否信任各种东东时,选择信任。安成后重启Eclipse.
1.2 配置Python插件
在Window菜单中选Preferences,
(1) PyDev->Interpreter - Python,New一个Python解释器,填上解释器名字和路径,路径选相应的python.exe。
注意:Eclipse会取得操作系统的当前编码作为他的缺省编码,而Ubuntu10.04的系统缺省编码是UTF8,所以不再需要更改。
(2) File->New->Project,选PyDev下的PyDev Project,Grammer和Interpreter选相应的版本,Finish
(3) 在PyDev Package Explorer的项目上右键,New->PyDev Module,随便写个名字,Finish。
然后随便写几行代码,Run。在弹出的对话框中选择Python Run ,OK。
2. 在eclipse环境中运行monkeyrunner脚本
2.1 配置eclipse环境
(1) 安装PyDev插件,按照第一部分即可完成安装
(2) 打开eclipse,点击工具栏上的windows-->preference-->PyDev-->Interpreters Python之后,点击New按钮,新建一个monkey解释器,name可以随便起,location选择tools目录下monkeyrunner,这样monkeyrunner在eclipse中的环境已经搭配完成
注意:在选择tools目录下monkeyrunner之前,需要做如下工作:
将monkeyrunner重命名为monkeyrunner-original,然后新建一个文件名为monkeyrunner,将下面的代码用gedit编辑器粘贴进去即可。
# /bin/bash
if [ "$1" = '-u' ]
then
shift
fi
exec /home/lxf/Android/android-sdk-linux/tools/monkeyrunner-original"$@"
2.2 在eclipse中运行monkeyrunner步骤如下:
(1) 新建一个PyDev Project
(2) 在src目录下新建一个PyDev Module,名字为monkeytest,这样就可以在monkeytest文件中写入任何python代码
(3) 工程上右键选择properties,设置本工程的Interpreter
(4) 在monkeytest文件上右键run as python,即可出运行结果。
【转】Monkeyrunner测试1——Monkeyrunner的使用的更多相关文章
- MonkeyRunner测试一MonkeyRunner的使用
最近搭建MonkeyRunner开发环境,安装PyDev时,饱受折磨,现在终于搞定.因为一些原因,用了JDK1.6,在线安装插件PyDev成功后,Windows-Preferences里找不到PyDe ...
- 锤子便签的 monkeyrunner 测试脚本(转)
https://testerhome.com/topics/878 MonkeyRunner可能大家已经听过无数次了,大家在网上也看过了各种关于的它的资料了,我这里就不再过多的啰嗦它的用途了,它可以对 ...
- monkey测试===monkeyrunner测试教程(1)
1.安装测试环境 jdk 安装与配置 android sdk安装与配置 Python编辑器安装与配置 以上安装请自行百度教程 Monkeyrunner使用方法 http://www.android-d ...
- pycharm与monkeyrunner测试
操作命令: 导包: import sysfrom com.android.monkeyrunner import MonkeyRunner,MonkeyDevice device=MonkeyR ...
- MonkeyRunner测试工具小结
一.MonkeyRunner介绍: MonkeyRunner是Google提供的一个基于坐标点的Android黑盒自动化测试工具.Monkeyrunner工具提供了一套API让用户/测试人员来调用,调 ...
- Monkeyrunner测试小实践
环境搭建完成后,我们通过命令打开模拟器,前提是在Eclipse中创建了一个模拟器 (1)cmd命令:emulator -avd 模拟器名称 启动了模拟器,此时你就会看到一个安卓模拟器的弹出 (2)cm ...
- Monkeyrunner测试环境搭建
Monkey手机APP压力测试,是对手机发送伪随机命令,对手机进行按键,触摸等操作,MonkeyRunner是对其发送重复操作的命令,是Monkey的进阶版,可以设置重复的操作或者是重现步骤等.相比较 ...
- Android 测试 之MonkeyRunner
一.什么是MonkeyRunner monkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器.通过monkeyrunner,您可以 ...
- [转] android自动化之MonkeyRunner测试环境配置(一)
Android自动化测试之MonkeyRunner 一.Android自动化测试之环境搭建 1.1 Android-sdk介绍 ¢ SDK(Software development kit)软件开发 ...
随机推荐
- html中a标签中的onclick和href的使用
1. 链接的 onclick 事件被先执行,其次是 href 属性下的动作(页面跳转,或 javascript 伪链接): 假设链接中同时存在 href 与 onclick,如果想让 href 属性下 ...
- Linux 下文件名乱码(无效的编码)的解决办法
文件是在WIndows 下创建的,Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码 不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码. ...
- Android Studio工程导入另一个工程作为lib
简单视频应用开发时,使用Vitamio作为视频解码库,官方建议直接以工程作为lib方便升级,将该工程导入到项目时不知道该怎么做,参考了下面的博客,这里存档标记一下. 参考:导入一个Android St ...
- matlab 函数说明—conv2
conv 是卷积的意思,2表示2维卷积. conv2的调用形式如下: 1. C = conv2(A,B) 这是最简单的一种调用形式,B作为卷积核在A的范围内滑动,若[ma na] =size(A) ...
- Unity3D知识点
世界空间(World):整个虚拟世界的3d空间,在Unity3d中以米作为单位,如长100米宽100米高100米的立体空间. 屏幕空间(Screen):屏幕2d空间,大小就是屏幕的大小,以像素作为单位 ...
- Sitecore Digital Marketing System, Part 1: Creating personalized, custom content for site visitors(自定义SiteCore中的 Item的Personalize的Condition) -摘自网络
Sitecore’s Digital Marketing System (DMS) can help you personalize the content your site displays to ...
- asp.net 分析器错误消息: 文件.aspx.cs”不存在错误
发布webapplication时后老是报告分析器错误消息: 文件.aspx.cs”不存在错误,差点抓狂,后来在网上搜到原因是: <%@ Page Language="C#" ...
- 怎样让你的代码更好的被JVM JIT Inlining
好书推荐:Effective Java中文版(第2版) JVM JIT编译器优化技术有近100中,其中最最重要的方式就是内联(inlining).方法内联可以省掉方法栈帧的创建,方法内联还使让JIT编 ...
- Spark的部署方式
1.Spark的应用程序部署 2.Spark的集群部署
- iOS block并发
多核运算 在iOS中concurrency编程的框架就是GCD(Grand Central Dispatch), GCD的使用非常简单.它把任务分派到不同的queue队列来处理.开发者把任务代码装到一 ...