TA的每日心情![](source/plugin/dsu_paulsign/img/emot/wl.gif) | 无聊 昨天 09:21 |
---|
签到天数: 1016 天 连续签到: 3 天 [LV.10]测试总司令
|
1测试积点
Monkey 1.Monkey命令-事件数
2.Monkey支持的所有命令
adb shell monkey
必选的命令
COUNT:事件数
通过事件数量来测试稳定性
adb shell monkey 次数 即,adb shell monkey 50
注:可能小伙伴发现这速度也忒快了,我看都没看清,这人的速度也没这么快,不合理。哈,那接着,控制每一次操作的间隔时间。
Monkey命令-事件间隔
–throttle 在事件之间插入固定延迟。通过这个选项可以控制Monkey发送事件的频率。时间单位是ms(毫秒)1000毫秒=1秒。
例1:发送10个事件,持续执行时间1分钟。
adb shell monkey --throttle 6000 10,即10个事件,做完一个事件就等待6秒后再执行。
备注:扯了半天,小伙伴想知道我要去检测公司的app到底要怎么整。
Monkey命令——指令包
p 此参数指定了一个包,Monkey将只允许系统启动这些包里的Activity。
-p -p 如果用此参数指定了多个包,Monkey将只允许系统启动这些包里的Activity。
例3:对58同城进行稳定性测试,执行100次事件。
adb shell monkey -p com.wuba 100
获取包名
adb shell pm list packages
知识点:
有可伙伴可能会问,我压根不知道我学习的app的名包叫啥那怎么找呢?
aapt dump badging D:\test\xxx.apk(APK的全名),如手机淘宝.apk
Monkey命令-日志设置
-v Level 0 除启动提示、测试完成和最终结果之外,提供较少信息。
-v-v Level 1 提供较为详细的测试信息,如逐个发送到Activity的事件。
-v-v-v Level 2 提供更加详细的设置信息,如测试中被选中的或未被选中的Activity。
例4:对58同城进行稳定性测试,执行100次事件,分别查看不同日志级别记录的信息情况。
adb shell monkey -p com.wuba -v 100
adb shell monkey -p com.wuba -v-v 100
adb shell monkey -p com.wuba -v -v -v 100
日志导出到本地
adb shell monkey -p com.wuba -v-v-v 100 >d:\wuba.txt
Monkey命令-seed值
在Monkey运行过程中,肯定会发现异常、奔溃、无响应等问题,对于此类问题如何进行复现呢?
-s 伪随机数生成器的seed值。如果用相同的seed值再次运行Monkey,它将生成相同的事件序列。
使用场景
复现bug,回归测试(验证bug)
adb shell monkey -s 1593077384911 -p com.wuba -v-v-v 100 >d:\wuba4.txt
adb shell monkey -s 100 -p com.wuba -v-v-v 50
在Monkey运行过程中,我们可以通过结束进程的方式来终止Monkey的执行,当然在运行过程中遇到异常、奔溃等情况Monkey也会停止。为了保证执行的事件数执行完整,我们可以通过调试选项的设置来防止在运行过程中Monkey命令的提前结束。
–ignore-crashes 忽略在应用程序出现crash时导致的monkey停止。
–ignore-timeouts 忽略在应用程序出现ANR问题时导致monkey停止。
–ignore-security-exceptions 忽略应用程序发生许可错误时导致monkey停止。
例5:对58同城进行稳定性测试,执行50次事件,忽略过程中遇到的异常,直到50次事件完成。
adb shell monkey -p com.wuba --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v-v-v 50
部份参数:
–pct-touch:触摸事件 --pct-trackball :轨迹事件。
–pct-motion:动作事件(手势) --pct-nav :基本导航事件。
–pct-appswitch:启动activity事件 -pct-majornav:主要导航事件。
–pct-rotation:屏幕旋转事件 --pct-syskeys:“系统”按键事件。
总结:
1、Monkey是对安卓apk进行随机事件的操作,通过报告来查看apk是否稳定。
2、只适用安卓平台。
3、根据公司不同产品的特性可设置不同概率来针对性测试或回归(如抖音他的滑动频率高)。
|
|