android monkey的测试结果怎么分析?
发布网友
发布时间:2022-05-10 01:59
我来回答
共2个回答
热心网友
时间:2022-04-18 09:40
http://www.douban.com/note/257030241/
Monkey测试结果分析一. 初步分析方法:Monkey测试出现错误后,一般的差错步骤为以下几步:1、 找到是monkey里面的哪个地方出错2、 查看Monkey里面出错前的一些事件动作,并手动执行该动作3、 若以上步骤还不能找出,可以使用之前执行的monkey命令再执行一遍,注意seed值要一样一般的测试结果分析:1、 ANR问题:在日志中搜索“ANR”2、 崩溃问题:在日志中搜索“Exception”二. 详细分析monkey日志:将执行Monkey生成的log,从手机中导出并打开查看该log;在log的最开始都会显示Monkey执行的seed值、执行次数和测试的包名。首先我们需要查看Monkey测试中是否出现了ANR或者异常,具体方法如上述。然后我们要分析log中的具体信息,方法如下:查
看log中第一个Switch,主要是查看Monkey执行的是那一个Activity,譬如下面的log中,执行的是
com.tencent.smtt.SplashActivity,在下一个swtich之间的,如果出现了崩溃或其他异常,可以在该Activity中
查找问题的所在。:Switch:#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10000000;component=com.tencent.smtt/.SplashActivity;end //
Allowing start of Intent {act=android.intent.action.MAIN
cat=[android.intent.category.LAUNCHER]cmp=com.tencent.smtt/.SplashActivity
} in package com.tencent.smtt在下面的log中,Sending Pointer ACTION_DOWN和Sending Pointer ACTION_UP代表当前执行了一个单击的操作;Sleeping for 500 milliseconds这句log是执行Monkey测试时,throttle设定的间隔时间,每出现一次,就代表一个事件。SendKey(ACTION_DOWN) //KEYCODE_DPAD_DOWN 代表当前执行了一个点击下导航键的操作;Sending Pointer ACTION_MOVE 代表当前执行了一个滑动界面的操作。:Sending Pointer ACTION_DOWN x=47.0 y=438.0:Sending Pointer ACTION_UP x=47.0 y=438.0Sleeping for 500 milliseconds:SendKey (ACTION_DOWN): 20 //KEYCODE_DPAD_DOWN:SendKey (ACTION_UP): 20 //KEYCODE_DPAD_DOWNSleeping for 500 milliseconds:Sending Pointer ACTION_MOVE x=-2.0 y=3.0:Sending Pointer ACTION_MOVE x=4.0 y=-3.0:Sending Pointer ACTION_MOVE x=-5.0 y=-3.0:Sending Pointer ACTION_MOVE x=3.0 y=4.0:Sending Pointer ACTION_MOVE x=-4.0 y=1.0:Sending Pointer ACTION_MOVE x=-1.0 y=-1.0:Sending Pointer ACTION_MOVE x=-2.0 y=-4.0如果Monkey测试顺利执行完成,在log的最后,会打印出当前执行事件的次数和所花费的时间;// Monkey finished代表执行完成。Monkey执行中断,在log的最后也能查看到当前已执行的次数。Monkey执行完成的log具体如下:Events injected: 6000:Dropped: keys=0 pointers=9 trackballs=0 flips=0## Network stats: elapsed time=808384ms (0ms mobile, 808384ms wifi, 0msnot connected)// Monkey finished
热心网友
时间:2022-04-18 10:58
Monkey是一个命令行工具 ,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试。Monkey包括许多选项,它们大致分为四大类:
· 基本配置 选项,如设置尝试的事件数量。
· 运行约束选项,如设置只对单独的一个包进行测试。
· 事件类型和频率。
· 调试选项。
在Monkey运行的时候,它生成事件,并把它们发给系统。同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理:
· 如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
· 如果应用程序崩溃或接收到任何失控异常 ,Monkey将停止并报错。
· 如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。
按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。
参考资料:http://www.360doc.com/content/14/0814/19/1438920_401863695.shtml