http://blog.csdn.net/robinzhou/article/details/6771120
很好的例子
http://www.cnblogs.com/ccxniit2004/archive/2012/01/18/2325684.html
好的博客文章
http://blog.csdn.net/jiguanghoverli/article/category/1060048
MonkeyRunner安装配置及小Demo
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.开始MonkeyRunner(终端输入单行命令)
2.1 开启android 模拟器
随便建个helloword 工程,run as android application就能起个模拟器来
2.2 进入sdk的tool目录中
比如我的是/home/xb/Android/android-sdk-linux/tools.
输入 sh monkeyrunner(启动monkeyrunner这个shell)
(1) 引入monkeyrunner需要的两个模块
from com.android.monkeyrunner i mport MonkeyRunner, MonkeyDevice 回车
(2) 把模拟器和monkey绑定,绑定后在monkeyrunner的操作等同于在模拟器的操作
device = MonkeyRunner.waitForConnection()
(3) 安装一个apk应用包
我安装的SDK自带apidemo包
/home/xb/Android/android-sdk-linux/samples/android-14/ApiDemos(把这个加到工程中编译后,在bin下生成一个apk包)
device.installPackage("./ApiDemos.apk")--我放tools目录下了
(4) 接下来,我们就可以启动其中的任意activity了,只要传入package和activity名称即可。命令如下:
device.startActivity(component = "com.example.android.apis/com.example.android.apis.ApiDemos")
(5) (包路径+activity路径,这个觉得有点多余,这个有待研究,理论上讲直接activity路径就可以)
按菜单建,你可以自己组合这些按键device.press('KEYCODE_MENU','DOWN_AND_UP')
输入这些命令时,一边输入一边观察模拟器的反映是否相对应,如下图所示:
3.monkeyrunner运行python文件
(1) 用vim编辑器,新建一个名为monkeytest.py的文件,然后输入如下代码:
python文件只是把单行的python语句整合起来,并没有特别的,可以用vim编辑器新建一个后缀为py的文件,然后添加下面的代码即可运行。
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice, MonkeyImage
device = MonkeyRunner.waitForConnection()
device.installPackage('/home/lxf/workspace/monkeyrunnertest/myproject/ApiDemos.apk')
device.startActivity(component="com.example.android.apis/com.example.android.apis.ApiDemos")
# Takes a screenshot
result = device.takeSnapshot()
# Writes the screenshot to a file
result.writeToFile('/home/lxf/workspace/monkeyrunnertest/picture/shotbegin.png','png')
# Presses the Down button
device.press('KEYCODE_DPAD_DOWN','DOWN_AND_UP')
device.press('KEYCODE_DPAD_DOWN','DOWN_AND_UP')
device.press('KEYCODE_DPAD_DOWN','DOWN_AND_UP')
device.press('KEYCODE_DPAD_DOWN','DOWN_AND_UP')
device.press('KEYCODE_DPAD_DOWN','DOWN_AND_UP')
# Takes a screenshot
result = device.takeSnapshot()
# Writes the screenshot to a file
result.writeToFile('/home/lxf/workspace/monkeyrunnertest/picture/shotend.png','png')默认截屏为png格式。
(2) 在命令行中用cd命令定位到android SDK的路径下的tools目录
(3) 输入sh monkeyrunner /home/lxf/workspace/monkeyrunnertest/src/monkeytest.py
其中,monkeytest .py 是目录下的python文件,当然也可以是其他路径
(4) 经过上述步骤之后,运行monkeytest .py文件,可得如下的图片:
4. 在eclipse环境中运行monkeyrunner脚本
4.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编辑器粘贴进去即可:(网上说原因是:We need to replace themonkeyrunner interpreter because Eclipse invokes it using the-u command line option, unbuffer stdin, stdout and stderr,which is not supported by monkeyrunner)
# /bin/bash
if [ "$1" = '-u' ]
then
shift
fi
exec /home/lxf/Android/android-sdk-linux/tools/monkeyrunner-original "$@"
4.2 在eclipse中运行monkeyrunner步骤如下:
(1) 新建一个PyDev Project
(2) 在src目录下新建一个PyDev Module,名字为monkeytest,这样就可以在monkeytest文件中写入任何python代码
(3) 工程上右键选择properties,设置本工程的Interpreter,如下图所示:
(4) 在monkeytest文件上右键run as python,即可出运行结果。
分享到:
相关推荐
在Ubuntu系统中配置Eclipse以使用Python解释器进行MonkeyRunner自动化测试,需要掌握几个关键知识点和步骤。首先,MonkeyRunner是Android提供的一个工具,它可以运行测试脚本,使用Python语言编写,通过控制台或网络...
### 使用Monkeyrunner实现Android自动化测试详解 #### 一、Monkey与Monkeyrunner的区分及应用场景 在探讨如何使用Monkeyrunner进行Android自动化测试之前,先来理解一下Monkey与Monkeyrunner之间的区别及其各自的...
这个名为"monkeyrunner录制回放文件.rar"的压缩包包含两个关键组件:`monkey_recorder`和`monkey_playback`,它们分别用于录制和回放用户在Android应用上的交互行为。 1. **MonkeyRecorder**: MonkeyRecorder是...
例如,在eclipse连接真机设备的情况下,通过在Window打开CMD输入命令行并生成log文件,或者直接在命令行显示执行结果。而MonkeyRunner则需要调用SDK目录的tools子目录下的monkeyrunner命令来运行,基本语法包括了对...
这样你可以在命令行中直接运行 `monkeyrunner` 命令。在 Windows 系统中,这通常位于类似 `D:\software\android-sdk-windows\tools` 的路径下。 Monkeyrunner 是基于 Python 的,所以你需要先安装 Python 环境。...
12. [Monkeyrunner全方位解析](无链接) - 包含了Monkeyrunner的命令行、文件以及Eclipse平台的使用方法。 了解和掌握Monkey和Monkeyrunner,不仅可以提高测试效率,还能帮助开发者快速定位和修复应用中的潜在问题。...
1. 录制:在命令行中定位到 `monkeyrunner.bat` 文件所在目录,执行 `monkeyrunner monkey_recorder.py` 开始录制。Monkeyrunner 会记录你在 Android 设备或模拟器上的操作。 2. 回放:再次进入命令行,使用 `...
- 运行monkeyrunner脚本需要通过命令行工具执行,并指定包含Python脚本的文件名。 - monkeyrunner内置帮助可以通过命令行调用,提供关于工具和API的详细信息。 6. **扩展与插件**: - monkeyrunner可以通过编写...
此外,MonkeyRunner还提供内建帮助,可以通过命令行查询API的使用方法,为测试人员提供即时的帮助信息。 对于想要使用MonkeyRunner工具的测试人员来说,需要熟悉Python编程语言,并且能够编写控制逻辑和断言以验证...
可能包括使用命令行工具或集成到其他开发环境(如Eclipse或Android Studio)的方法。 6. **示例和案例研究**:提供实际的代码示例,展示如何实现常见测试场景,如启动应用、点击按钮、滑动列表等。这些例子可以帮助...
4. 读取和写入文件:MonkeyRunner支持通过`MonkeyRunner.copyFile()`和`MonkeyRunner.pushFile()`方法在本地和设备之间传输文件。 5. 结束测试:在完成所有测试步骤后,使用`MonkeyDevice.disconnect()`断开与设备的...
而`MonkeyRunner`类则提供了运行脚本、等待特定时间以及将结果输出到文件等实用功能。 在创建MonkeyRunner脚本时,首先需要导入`com.android.monkeyrunner`包,并创建一个`MonkeyRunner`实例。然后,你可以通过`...
ADT Bundle包含了Eclipse IDE、Android SDK Manager等基本开发工具,以及MonkeyRunner所需的运行环境。 1. **下载**:访问Android开发者官网(https://developer.android.com/studio#downloads)下载ADT Bundle。 2...
这个“monkeyrunner学习资料”包含了一些关于如何使用MonkeyRunner的文档,虽然网上相关资源可能不多,但通过深入学习这些文档,可以逐步掌握MonkeyRunner的使用。 首先,"Android自动测试之monkeyrunner工具.doc...