monkeyrunner脚本录制
① monkeyrunner问题,跑脚本时怎么记录手机都做了什么操作
monkeyrunner只是单方面执行脚本,而不会和手机交互,它执行这个动作后,是不会知道客户端已经完成了没有,所以你说的这个统计只能在购物软件内部添加日志了,在monkeyrunner中是实现不了的。
② monkeyrunner 编写python脚本运行时遇到的几个问题
你需要添加一句转换目录: chdir(%ANDROID_HOME/sdk/tools)
添加Except异常到文件
③ 如何让monkeyrunner 集成到eclipse 进行调试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文件,可得如下的图片:
在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 Mole,名字为monkeytest,这样就可以在monkeytest文件中写入任何python代码
(3) 工程上右键选择properties,设置本工程的Interpreter,如下图所示:
(4) 在monkeytest文件上右键run as python,即可出运行结果。
④ 在win7中可以编写python脚本(monkeyrunner自动化测试脚本)
你的monkeyrunner脚本要用android自己的monkeyrunner解释器(基于jython) 来加载,eclipse默认的是标准python解释器,当然会报错。最简单的方法是..忽略它...当然你也可以自己配置eclipse的python解释器选择。
⑤ monkeyrunner录制怎么输入文本
monkeyrunner录制怎么输入文本,解答如下
#coding: UTF-8
#导入模块
from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
from com.android.monkeyrunner.easy import EasyMonkeyDevice
from com.android.monkeyrunner.easy import By
#链接设备
device = MonkeyRunner.waitForConnection()
easy_device = EasyMonkeyDevice(device)
#启Activity
device.startActivity(component="com.wanyou.lawyerassistant/com.wanyou.lawyerassistant.activity.SplashActivity")
MonkeyRunner.sleep(10)
#点击立即使用
easy_device.touch(By.id('id/activity_guid_login_btn'),MonkeyDevice.DOWN_AND_UP)
MonkeyRunner.sleep(5)
#点击账号输入框
easy_device.touch(By.id('id/login_user_input'),MonkeyDevice.DOWN_AND_UP)
#输入账号
device.type('中文')