3.app测试--稳定性测试

稳定性测试:
1.adb monkey运行测试:
在这里插入图片描述
如:

adb shell monkey -p com.tmes.topstar --throttle 500 -s 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v 1000 >D:\android\monkey_log.txt 

2. adb monkey报告分析:
关键字及其含义:
1)ANR:应用无响应(Application Not Responding)
2)crash:程序崩溃
3)exception:运行异常事件。(如:空指针, NullPointerException)

//monke本身的问题,忽略
:Sending Flip keyboardOpen=false
Got IOException performing flipjava.io.IOException: write failed: EINVAL (Invalid argument)
// Injection Failed

4)GC:内存泄漏

问题复现
1)查看出现错误出的事件操作,手动执行事件,复现问题
2)手动无法复现时,使用相同的seed值重跑

3.详细分析法:
1) ANR:一般是主线程的响应超过5秒,或者BroadcastReceiver没有在10秒内作出响应。这个就是一个比较严重的缺陷。把耗时的操作另起线程来处理就可以了。
2)分析log中的具体信息:
查看log中第一个Switch,主要是查看Monkey执行的是那一个Activity,在下一个swtich之间的,如果出现了崩溃或其他异常,可以在该Activity中查找问题的所在。
3)内存泄漏

  1. 内存泄漏弹出out of memory对话框
  2. 对于有内存泄漏但是没有单出out of memory对话框的情况,可以通过logcat文件GC出信息,(GC:java的垃圾回收机制)
    GC_FOR_ALLOC: 因为在分配内存时候内存不够引起的
    GC_EXPLICIT 表明GC被显式请求触发的,如System.gc调用,
    GC_CONCCURRENT: 表明GC在内存使用率达到一定的警戒值时候,自动触发
    GC_BEFORE_OOM 表明在虚拟机抛出内存不够异常oom之前,执行最后一次回收内存垃圾
    3.发现内存泄露–内存报告分析
    monkey命令加一个参数–hprof,重新执行同样的操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值