工具/环境准备: JDK、android SDK、adb工具组件、安卓手机、手机USB数据线
环境遇到问题:adb devices命令提示“device not found”。
排除方法:
(1)检查数据线是否正常可用,换用已经确定可正常调试使用的数据线
(2)检查手机USB驱动,重新安装驱动解决。参考:http://jingyan.baidu.com/article/ce09321b5b76642bff858f31.html
(3)检查是否adb版本过低导致,最好是比较新的版本(http://adbshell.com/downloads),CMD命令行:adb version
(4)手机是否打开调试模式
(5)检查adb server默认端口5037是否被占用(通常考虑PC端手机助手的影响)
具体参考文章:
http://blog.csdn.net/whurs/article/details/52857647
http://blog.csdn.net/computertechnology/article/details/51322849
(6)尝试以上结果还是不行请重启电脑,或者修改server监听端口:
adb tcpip 5038 #指定没有被占用的端口,没指定默认是5037
参考:http://www.jianshu.com/p/f82b733bd6ac
adb压力测试实例:
monkey -p x.x.x --ignore-crashes --ignore-timeouts --ignore-native-crashes --pct-touch 50 --pct-flip 50 -s 1 -v -v --throttle 1 100000 2>/sdcard/error.txt 1>/sdcard/info.txt
参数描述
-p x.x.x #只仅针对特定包名进行测试
--ignore-crashes #忽略应用程序崩溃(Force & Close错误),继续发送执行事件,直到事件数执行完成
--ignore-timeouts #忽略应用程序发生ANR(Application No Responding)错误时,直到事件数执行完成
--ignore-native-crashes #忽略本地应用程序发生奔溃,直到事件数执行完成
--pct-touch 50 #调整触摸事件为30%。即整个事件过程中触摸事件占30%
-s 1 #伪随机数生成器seed值。Seed值为1。相同的seed值再次执行monkey,将产生相同的事件序列。
-v -v #日志级别为Leve1 1。将提供较为详细的日志,包括每个发送到Activity的事件信息
--throttle 1 #事件之间延时1毫秒。可以控制monkey的执行速度,如果不指定该选项,monkey事件间将不会延时。
100000 #执行事件数为10万次
2>/sdcard/error.txt #Leve1 2日志保存到sdcard上的error.txt中
1>/sdcard/info.txt #Leve1 1日志保存到sdcard上的info.txt中
各类事件类型和参数使用,详细内容介绍参考文章:http://t.leborn.me/blog/home/detail/1509242157594151495
补充:
1.如果针对某个界面的压力测试,可以在命令中指定对应activity
2.网络、蓝牙等app使用前置条件,需要事先设定