首页 > 应用开发 > Java > Monkey 测试方法和要求
Monkey 自动化测试方法和要求
一、Monkey测试简介
Monkey 就是猴子的意思,所以Monkey测试形象化的意思就是:像一个猴子一样的胡乱的、随机的对产品进行操作。 所以Monkey测试的一个重要特点就是随机性,就是对手机系统进行大量随机的操作,从而发现手机在稳定性上面的问题。
二、Monkey测试方法
前提:1.手机支持root,(或者说用eng版本的机器)
2. 手机处于无锁状态,在主菜单应用页面,手机保持常亮,休眠时间改成30 分钟。
3. 如果用不了 monkeyrunner, 就删除环境变量 path , 重新添加 sdk 路径。
1. 测试指令:
Adb shell monkey -p < 模块> -v -v -s 100 10000 > d:/a.txt
-p < 模块 > 就是应用程序包,如:短信模块,com.android.mms; -v 10000 表示有10000 个伪随机事件,或者说测试内容。
当测试遇到异常,无响应、停止运行、重启、卡死、自动关机,monkey会自动停止运行。
Ps: 针对内存不足的手机,由于比较卡顿,可以增加延迟,减缓测试速度 ,避免因卡顿误操作导致的报错, --throttle 150 。 如:
Adb shell monkey -p < 模块> -v -v -s 100 --throttle 150 10000 > d:/a.txt
2. 测试要求:
1) 测试之前开启MTKlog—>logcat. ( 高通平台就直接adb logcat > d:/log1.txt 抓取log)
2) 每个模块要求至少测 试 30 次,并且同时保留每次测试log:a1.txt 、a2.txt 、a3.txt…….
3) 遇到anr 、卡死、重启、自动关机等异常。将Mtklog 和当次遇到异常产生的a.txt 一起给到研发
4) 每次测试调试版本时,专门安排一个人执行monkey 自动化测试,要求每个模块测试10 次,每次设置随机事件10000 次。release version ,要求跑25 次,不会出现1 次nullPointException 。Monkey 作为一个必测内容。
3. 测试模块:(应用包)
应用包在/data/data 里面。
输入指令:
Adb shell
Cd /data/data
ls –l
PS :包括第三方的都可以执行monkey 测试。同时有些应用包无法执行monkey ,请一个个验证。重点关注主要应用包。
扩展补充:
1. 多个应用包执行monkey
同时有兴趣的人可以将monkey 延伸一下,如:一次跑多个模块应用,如:
Adb shell monkey –p < 模块 > –p < 模块 > -v –v –s 100 --throttle 150 10000 > d:/a.txt
2. 人不在的时候,长时间执行monkey 压力测试,当出现报错、崩溃、超时等异常时,依然执行monkey 测试。
adb shell monkey –p < 模块 > -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > d:/a.txt
解释: 产生时间序列的种子值: 500 , 忽略程序崩溃 、 忽略超时 、 监视本地程序崩溃 、 详细信息级别为 2 , 产生 10000 个事件 。
--dbg-no-events
:初始化启动的
activity
,但是不产生任何事件。
--hprof
:指定该项后在事件序列发送前后会立即生成分析报告
——
一般建议指定该项。
--ignore-crashes
:忽略崩溃
--ignore-timeouts
:忽略超时
--ignore-security-exceptions
:忽略安全异常
--kill-process-after-error
:发生错误后直接杀掉进程
--monitor-native-crashes
:跟踪本地方法的崩溃问题
--wait-dbg
:知道连接了调试器才执行
monkey
测试。
补充部分:
例如:
目前K553 安卓7.0 能执行Monkey 的模块:(系统不同会有差异,后续 每个项目启动后VPM 找出对应能测项,发给大家。)
com.android.fmradio 收音机
com.mediatek.camera 相机
com.android.browser 浏览器
com.android.mms 信息
com.android.stk SIM 卡应用
com.android.launcher3 UI 界面
com.android.calendar 日历
com.android.dialer 电话(拨号盘)
com.android.gallery3d 相册
com.android.settings 设置
com.android.calculator2 计算机
com.android.email 电子邮件
com.android.music 音乐
com.android.deskclock 时钟
com.android.soundrecorder 录音机
com.android.quicksearchbox 搜索
com.android.vending play 商店
com.android.documentsui 下载
com.mediatek.filemanager 文件管理
com.mediatek.datatransfer 备份与还原
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69936314/viewspace-2722604/ ,如需转载,请注明出处,否则将追究法律责任。