首页 > 代码库 > 使用Monkey对apk做稳定性测试
使用Monkey对apk做稳定性测试
认识Monkey
官方文档:http://www.android-doc.com/tools/help/monkey.html
什么是Monkey?
Monkey是Android中的一个命令行工具,可以运行在模拟器或实际设备中,它向系统发送随机的用户事件流(按键输入,触摸屏输入,手势输入等),实现对应用程序随机,快速疯狂操作的效果。Monkey测试是一种为了测试软件的稳定性,健壮性的快速有效的方法。
一、安卓adb环境搭建
略,android开发环境:使用Android Studio搭建Android集成开发环境(图文教程)
二、Monkey使用步骤
1.ADB连接Android测试设备,在命令行输入 adb devices 查看设备连接情况
如果是真机,直接使用USB线连接真机和PC机,adb devices即可看到真机已经连接上了,如
C:\Users\Administrator>adb devices
List of devices attached
611AKBPP22HR5 device
如果使用模拟器,如夜神模拟器,则需要手工连接才可以看到模拟器
C:\Users\Administrator>adb connect 127.0.0.1:62001 connected to 127.0.0.1:62001 C:\Users\Administrator>adb devices List of devices attached 127.0.0.1:62001 device
2.确定待测试应用的PackageName
方法一:直接问开发即可
方法二:使用一些查包工具可以获得PacakgeName
方法三:通过重签名软件可以获得,参照《使用re-sign.jar对apk进行重签名》
3.使用Monkey发一条测试命令
示例:
adb shell monkey -p com.ssjj.recorder -v 50
包名:com.ssjj.recorder
-p 指定测试包名
-v 显示默认程度的信息
事件数设定为50
三、异常日志分析
1.找到monkey里面的哪个地方出差
2.查看Monkey里面出错前的一些事件动作,并手动执行该动作
3.若以上步骤不能找出,可以使用之前执行的monkey命令再执行一次,注意seed值要一样。
4.注意第一个switch以及其他异常信息
常见问题:
1.ANR问题:在日志中搜索“ANR”
2.崩溃问题:在日志中搜索"CRASH"
假如运行结束后,结果显示为:
** System appears to have crashed at event 48 of 50 using seed 1499432070709
则说明系统在50个操作的第48个操作里面出现了异常,用的种子是1499432070709。我们下次用相同的操作序列再现这个异常,如
adb shell monkey -p com.ssjj.recorder -s 1499432070709 500
使用Monkey对apk做稳定性测试