Monkey测试结果分析

测试准备:

Monkey压力测试时除了添加测试APP,还可另外添加2-3个第三方app进行对比测试。

1.在D盘新建一个txt文件,添加APP包名,命名为whitelist.txt

 

2.用cmd命令把whitelist.txt文件push到手机

adb push d:\whitelist.txt /data/local/tmp/ 


3.压力测试指令monkey -p 包名 [参数] -v (-v -v) 执行次数 >导出log文件

l 对白名单包进行测试

l monkey --pkg-whitelist-file /data/local/tmp/whitelist.txt --throttle 500 -s 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v 1000  1> /mnt/sdcard/monkey_test.txt 2>&1 &

黑名单:不测试的应用

白名单:只测试这部分应用

注意:不能同时设置黑名单和白名单

设置黑名单:

--pkg-blacklist-file PACKAGE_BLACKLIST_FILE

设置白名单:

--pkg-whitelist-file PACKAGE_WHITELIST_FILE

l 对单独的APP进行测试

l monkey-p com.hst.che --throttle 500 -s 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v 1000 >/mnt/sdcard/monkey1.txt

说明:

--throttle(毫秒)事件之间插入的固定延迟。通过这个选项可以减缓Monkey的执行速度。如果不指定,Monkey将尽可能快的产生并执行事件。

-s 用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。

--ignore-crashes 忽略程序崩溃。设置此选项后,Monkey会执行完所有的事件,不会因crash而停止。

--ignore-timeouts 忽略程序无响应。设置此选项后,Monkey会执行完所有的事件,不会因ANR而停止。

--ignore-security-exceptions 忽略证书或认证异常。设置此选项后,Monkey会执行完所有的事件,不会因认证或证书异常而停止。

--ignore-native-crashes 监视系统中本地代码发生的崩溃

--monitor-native-crashes 忽略本地代码导致的崩溃。设置忽略后,Monkey将执行完所有的事件,不会因此停止。

-v -v –v 提供最详细的设置信息

 

4.导出log到电脑:pull /mnt/sdcard/monkey.txt d:monkey.txt



分析log

 

l 日志开头:显示本次测试seed值,执行次数,测试包,

l 日志结尾:

如果Monkey测试顺利执行完成,在log的最后,会打印出当前执行事件的次数和所花费的时间;Monkey finished代表执行完成。

(如果Monkey执行中断,在log的最后也能查看到当前已执行的次数。)

l 日志内容分析

一般测试结果分析-搜索关键字:
1.程序无响应,ANR问题:在日志中搜索“ANR”
2.崩溃问题:在日志中搜索“CRASH”

3.其他问题:在日志中搜索”Exception”

 

详细分析monkey日志

Switch--查看log中的Switch,主要是查看Monkey执行的是那一个Activity,两个swtich之间如果出现了崩溃或其他异常,可以在该Activity中查找问题的所在。

Sleeping--Sleeping for 500 milliseconds这是执行Monkey测试时,throttle设定的间隔时间,每出现一次,就代表一个事件。

 

重现问题

Monkey测试出现错误后,一般的查错步骤为以下几步:
1.找到是monkey里面的哪个地方出错
2.查看Monkey里面出错前的一些事件动作,并手动执行该动作
3.若以上步骤还不能找出,可以使用之前执行的monkey命令再执行一遍,注意seed值要一样

你可能感兴趣的:(APP测试)