最近在慕课学习了android的压力测试今天整理下,有出入的地方请指正。
压力测试的目的:
1.提高产品的稳定性;
2.提高产品的留存率
什么时候进行压力测试:
1.首轮功能测试通过后
2.下班后夜班进行
进行Mokey测试的前提条件:
配置python环境,android SDK准备
Monkey测试有三个工具可用:Monkey , MonkeyScript, MonkeyRunner
Mokey:是发送伪随机用户事件的工具,工具在android系统中存放。
MonkeyScript : 可以被Monkey识别的命令集合,可以完成固定的操作
MonkeyRunner:通过API定义特定命令和事件控制设备
测试操作过程:
1开启手机中USE的选项
2确认phone和电脑的链接 adb devices
3安装app
adb install app名字
或 adb push app名字 安装的目标地址
adb reboot
4.发送压测指令
adb shell monkey 1000 (1000个指令) 对系统整体的压力测试,并未指定app
出现 Events injected : 1000 (=1000表示没有出现crash, < 1000表示出现crash)
5.获取app包名
adb logcat | grep START
6.指定app包名发送压测指令
adb shell Monkey -p PackageName 1000
Monkey高级参数的应用 1.throttle 指定时间之间的间隔 adb shell monkey -throttle <milliseconds>毫秒 2. seed 指定随机生成数的seed值(根据该值科重复上次操作) adb shell monkey -s <event-count>执行多少次 3.触摸事件 --pct-touch 指定触摸事件百分比 adb shell monkey --pct-touch <percent>完成的百分比 4.动作事件 --pct-motion 指定动作事件百分比 adb shell monkey --pct-motion<percent>完成百分比 5.轨迹球事件 --pct-trackball 设定轨迹球事件百分比 adb shell monkey --pct-trackball <percent> 6.基本导航事件 --pct-nav 设定基本导航事件百分比,输入设备的上下左右 adb shell monkey --pct-nav<percent> 7.主要导航事件 --pct-majornav 设定主要导航事件百分比,兼容中间键,返回键,菜单键按钮 adb shell monkey --pct-majornav <percent> 8.系统导航 --pct-syskeys 指定系统导航事件百分比,HOME、BACK、拨号及音量键 adb shell monkey --pct-syskeys <percent> 9.启动Activity事件 --pct-appswitch 指定启动Activity的事 件百分比 adb shell monkey --pct-appswitch <percent> 10.不常用 --pct-anyevent 指定任意事件百分比 adb shell monkey --pct-anyevent <percent> 11.崩溃事件--ignore-crashes 忽略崩溃和异常 adb shell monkey --igno-crasher <event-count>异常数量 12.超时事件--ignore-timeouts 忽略ANR adb shell monkey --ignore-timeout <event-count>ANR数量