要使用MonkeyRunner,就要学习使用Python,哎
先抄一段官方doc里的代码
作用是启动一个程序(应该是启动程序默认的Activity),然后按MENU键,并截屏
# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRunner as mr
from com.android.monkeyrunner import MonkeyDevice as md
# Connects to the current device, returning a MonkeyDevice object
device = mr.waitForConnection()
# sets a variable with the package's internal name
package = 'com.example.android.myapplication'
# sets a variable with the name of an Activity in the package
activity = 'com.example.android.myapplication.MainActivity'
# sets the name of the component to start
runComponent = package + '/' + activity
# Runs the component
device.startActivity(component=runComponent)
# Presses the Menu button
device.press('KEYCODE_MENU', MonkeyDevice.DOWN_AND_UP)
# Takes a screenshot
result = device.takeSnapshot()
# default folder name to save snapshot
snapshot = 'E:\\tmp\\'
# Writes the screenshot to a file
result.writeToFile(snapshot + 'shot1.png','png')
当然这个离我们的自动化测试还很遥远
如果要检验文本,就需要获得View,而希望获得View,就需要设备支持启动View Service,如果要启动View Service,设备就必须是开发机(root后还不一定是开发机),或者模拟器。
要获得View,可以使用第三方的插件ViewClient,当然也可以用MonkeyRunner自带的HierarchyViewer和ViewNode(仅在2.3.3以后支持)
使用ViewClient
如果要使用ViewClient,就去GitHub下载一个
https://github.com/dtmilano/AndroidViewClient
然后配置一下环境,增加ANDROID_VIEW_CLIENT_HOME(其实不配置也OK)就可以使用了
import sys
import os
# this must be imported before MonkeyRunner and MonkeyDevice,
# otherwise the import fails
ANDROID_VIEW_CLIENT_HOME = os.environ['ANDROID_VIEW_CLIENT_HOME']
sys.path.append(ANDROID_VIEW_CLIENT_HOME + '/src')
from com.dtmilano.android.viewclient import ViewClient
需要注意,ViewClient获取adb路径的判断,对Windows支持得不太好,有些地方的判断需要自己修改一下才能运行
2.0版,对adb的可执行性的check,没有考虑平台的差异性,统一用os.access(xxx, os.X_OK)
2.3版,增加了isWindows的判断,但是获取exeFile的时候又出现同样错误
使用HierarchyViewer和ViewNode
# Support from 2.3.3
from com.android.chimpchat.hierarchyviewer import HierarchyViewer
from com.android.hierarchyviewerlib.device import ViewNode
hv = device.getHierarchyViewer()
vn = hv.findViewById('id/icon_menu')
调查到此为止,果断回归NativeDriver
分享到:
相关推荐
monkeyrunner为android系统新公开的一个测试工具。有助于开发人员通过脚本部署较大规模的自动化测试。
monkeyrunner环境搭建以及monkeyrunner与python的交互简单说明
Monkeyrunner入门使用总结,非常适合初学者学习
monkeyrunner教程
非扫描版 带书签许奔 著ISBN:978-7-111-52120-4目录本书赞誉前言第一部分 基础篇第1章 Android自动化...monkey之子monkeyrunner使用详解3.1 monkeyrunner概述3.2 monkeyrunner API详解3.3 monkeyrunner脚本编写
比较了monkeyrunner和monkey这两个好兄弟,同时把monkeyrunner实现的脚本集成到eclipse-pydev的环境中运行
很全的关于monkeyrunner的中文文档,希望对大家有所帮助。
monkeyrunner+python脚本 monkeyrunner+python脚本 monkeyrunner+python脚本 . monkeyrunner+python脚本 monkeyrunner+python脚本
MonkeyRunner,Monkeydevice,Monkeyimage这三个类中的方法接口使用说明
MonkeyRunner工具是使用Jython(使用Java编程语言实现的Python)写出来的,它提供了多个API,通过monkeyrunner API 可以写一个Python的程序来模拟操作控制Android设备app,测试其稳定性并通过截屏可以方便地记录出现的...
android自动化测试monkeyrunner的入门使用教程,讲解了如何使用monkeyrunner进行android的自动化测试
monkeyrunner简单实用手册,里面介绍了monkeyrunner如何连接固定手机,如何截图,如何进入脚本录制界面,如何运行monkeyrunner等操作
主要描述如何使用monkeyrunner,以及脚本的使用
MonkeyRunner-官方Doc
monkeyrunner工具的使用: monkeyrunner工具有三个类: 1. MonkeyDevice 2. MonkeyImage 3. MonkeyRunner MonkeyDevice:可以实现应用安装、卸载,按键、触击、拖拽,Activity的启动,输入等操作。
MonkeyRunner的java代码实现,测试例子,以及用到的测试apk
MonkeyRunner工具是使用Jython(使用Java编程语言实现的Python)写出来的,它提供了多个API,通过monkeyrunner API 可以写一个Python的程序来模拟操作控制Android设备app,测试其稳定性并通过截屏可以方便地记录出现的...
MonkeyRunner是android应用的测试工具, 可以模拟录制屏幕操作,并导出脚本做压力测试.
monkeyrunner的源代码,以及googlecommon的源码,hierchyviewer的源码,还有其他的库