目录
1.MonkeyRunner的基本使用
1.1简介
通过编写Monkeyrunner api 使用python模拟控制安卓设备上的应用
1.2与Monkey的区别
MonkeyRunner要通过api发送指令和事件来控制设备,而Monkey是直接运行在设备/模拟器上通过adb shell 命令生成随机事件进行测试
1.3Monkeyrunner的存放路径
位于Android\Sdk\tools\bin下
1.4Monkeyrunner的特点
①可以进行功能测试,包括模拟点击、滑动、截图等事件
②多设备控制:
a.通过物理方式一次连接所有设备并启动所有模拟器,然后运行一个或多个测试
b.可通过编程方式启动模拟器配置,运行一个或多个测试,然后关闭模拟器
c.可以跨多个设备/模拟器应用一个/多个测试套件
③回归测试:运行某个应用,然后将它的输出屏幕截图与一组已知正确的屏幕截图进行比较。
1.5运行Monkeyrunner工具,包括三个导入模块
MonkeyRunner、MonkeyDevice和MonkeyImage
1.6Monkeyrunner常用方法
1.6.1com.android.monkeyrunner.MonkeyDevice.alert
注释:弹出一个对话框直到用户确认为止
参数:message:会话弹出的内容
title:会话标题,默认alert
okTitle:会话确认按钮,默认ok
Alert(string message,string title,string okTile)
1.6.2
com.android.monkeyrunner.MonkeyRunner.input
注释:用户可以在一个对话框里面输入内容
参数:message:对话框显示信息
MonkeyRunner.input(string message,initialValue,title,okTitle,cancelTitle)
2.MonkeyImage的基本使用
1.1简介
在测试过程中用来保存各种格式的截图,并进行图像对比
1.2常用方法
1.2.1 对比两张图片。这个用来比较两个截图是否相同,结果为boolean值。
sameAs ( MonkeyImage other, float percent)
1.2.2将图片保存到文件夹里,这个是保存截图的位置,和命名,可以把图片保存到sdcard里面,也可以保存到电脑里面
writeToFile (string path, string format)
1.2.3示例:该例子为之前手上做过的项目。判断打印机,机子首页是否有清洗图标,有的话点击清洗按钮
3.MonkeyDevices的基本使用
1.1简介
该类提供了安装和卸载程序包、开启Acticity、发送按键和点击事件等方法
1.2常用方法
1.2.1 com.android.monkeyrunner.MonkeyDevice.drag
注释:拖动屏幕操作
参数:start:拖曳开始坐标 (a tuple(x,y)in pixels)
end:拖曳结束坐标点(a tuple(x,y)in pixels)
duration:持续时间(default 1.0 seconds)
steps:拖曳步骤(default is 10)
MonkeyRunner.drag(start,end,duration,steps)
1.2.2安装包到手机里
com.android.monkeyrunner.MonkeyDevice.installPackage(string path)
1.2.3截图
com.android.monkeyrunner.MonkeyDevice.takeSnapshot()
1.2.4按键
com.android.monkeyrunner.MonkeyDevice.press(string name,dectionary type)
4.MonkeyRunner关于坐标和控件ID的获取
4.1通过Monnkeyrecord获取坐标
首先启动Monnkeyrecord(前提是已连接安卓手机,并打开USB调试,打开要测试的APP),在命令行输入如下内容:
输入后会启动Monnkeyrecord,可以对界面进行操作,如下图所示
4.2在安卓SDK的Tools工具下的bin文件下的uiautormatorview工具,可以获取控件的坐标ID,如下图所示:
以上是我常用的获取坐标ID的方式,欢迎补充!大家一起学习~
了解更多见MonkeyRunner官网: