-
APP性能测试
monkeyscript:是一组可以被Monkey识别的命令集合,可以完成重复固定的操作
monkey与monkeyrunner的区别:
monkey:在adb shell中,生成用户或系统的伪随机事件
monkeyrunner:通过API定义特定的命令和事件控制设备
monkeyrunner APIs
monkeyrunner:用来连接设备或模拟器
monkeydevice:提供安装、卸载应用。发送模拟事件
monkeyimage:完成图像保存,及对比的操作
monkeyrunner的测试类型:多设备控制、功能测试、回归测试
查看全部 -
MONEKY API2
查看全部 -
MonkeyRunner API -alert
查看全部 -
MonkeyRunner实现自动化过程是一个纯功能性的过程
如果想要多次,需要python脚本实现多线程或循环操作,可以实现重复的操作过程
查看全部 -
查看设备名称 命令:adb devices (device前面的数字就是设备名称)
MonkeyRunner.sleep(2)等待时间
MonkeyRunner 脚本名 运行脚本
查看全部 -
MonkeyRunner API-waitForConnection : 等待设备连接,有多个device id,需要指明具体是哪个设备
命令: waitForConnection(float timeout,string deviceid)
Monkeydevice API-drag: 拖动
命令:drag(tuple start,tuple end,float duration,integer steps)
start 起点位置 end 终点位置 duration 手势持续的时间 steps 插指点的步数,默认10
MonkeyDevice API-press :按键
命令:press(string keycode,dictionary type)
keycode 名:Down、UP、DOWN_AND_UP
MonkeyDevice API-startActivity :启动应用
命令:startActivity(package+'/'activity)(包名+Activity名,是一个参数)
MonkeyDevice API -touch: 点击
命令:touch(integer x,integer y,integer type)
x坐标值,y坐标值,type:DOWN,UP,DOWN_AND_UP
MonkeyDevice API -type :输入
命令:type(string message)
MonkeyDevice API-takeSnapshot :截屏
命令:MonkeyImage takeSnapshot()
MonkeyImageAPI-sameAS :图像对比
命令:boolean sameAs(MonkeyImage other,float percent)
MonkeyImageAPI-writetoFile :保存图像
void writeToFile(string path, string format)
查看全部 -
MonkeyRunner API-alert
警告框 : 命令:void alert(string message, string title,string okTitle)
脚本:
#!/usr/bin/python
#-*- UTF-8 -*-
from com.android.monkeyrunner import MonkeyRunner 导入包
MonkeyRunner.alert('hello mook frends','this is title','OK')
执行脚本语句: monkeyrunner 脚本名
monkeyrunner所在的路径:cd../../Downloads/android-sdk/tools/
说明:执行过程中发现命令无法执行时,检查SDK工具的路径没有添加到环境变量里面(即 /Downloads/android-sdk/tools 没有添加到环境变量里面,加上即可解决)
查看全部 -
DispatchPointer
查看全部 -
2 DispatchTrackball
查看全部 -
1 DispatchTrackball
查看全部 -
MonkeyScript实践
1、启动APP。2、点击输入框。3、输入查询条件。4、点击键盘回车。5、点击搜索按钮。6、等待结果出现。7、点击Clear按钮清屏
cd Downloads/android-sdk 下面的uiautomatorviewer 中获取坐标点
adb push 脚本名/data/local/tmp/ 脚本复制到手机里面命令
monkey -f 脚本名 次数 在手机中执行脚本
查看全部 -
adb shell monkey -v - p xxx --pct-touch <percent>
查看全部 -
Monkey Script
执行Monkey的脚本命令:adb shell monkey -f <scriptfile><event-count>
1、DispatchTrackball 轨迹球事件
轨迹球事件DispatchTrackball(long downtime(按键最初被按下的时间),long eventide(事件发生的时间),int action(具体操作了按下还是弹起),float x(x的坐标点),float y(y的坐标点),float pressure(当前压力事件的大小0-1),float size(触摸事件0-1),int metastate(按下meta键的标识),float xprecision(x坐标的精确值),float yprecision(y坐标的精确值),int device(事件来源0-X),int edgeflags(超出屏幕范围))
action 0表示按下,1代表弹起,x和y代表的坐标点DispatchPointer 点击事件
DispatchPointer(long downtime,long eventide,int action,float x,float y,float pressure,float size,int metastate,float xprecision,float yprecisoin,int device,int edgeflags)
action 0表示按下,1代表弹起,x和y代表的坐标点
DispatchString 输入字符串事件
DispatchString(String text)
LaunchActivity 启动应用
LaunchActivity(package(包名),Activity(启动页面的名称))
UserWait 等待事件
UserWait(1000 等待事件的值毫秒,默认值1000)
DispatchPress 按下键值
DispatchPress(int keycode)#keycode 66回车键
查看全部 -
ANR结果析取,实践步骤和CRASH析取结果实践步骤一样。
anr日志存放路径:/data/anr/traces.txt
查看全部 -
CRASH 结果析取
实践过程:
1、安装可以引起CRASH的APP
2、执行压力命令
3、析取CRASH的Exception信息
查看全部
举报