注释:格式不太好,实践中用的,整理下希望可以帮助到你!
一:搭建环境
安装jdk,配置jdk环境变量;
下载adb,配置adb环境变量;
在cmd窗口依次输入java、javac、java -version、adb、aapt;出现相关配置信息则表示搭建好了环境!
二:monkey简介
monkey压力测试是随机自动点击事件,仅可以压测Android系统,Android系统是简版的Linux系统。
三:重要的参数
-v表示日志打印输出的详细程度,最高级别有-v-v-v;
-s 是seed值,如果运行出错会给你个seed值,一般都是比较大的,最重要的是:-s 后面加数值表示的是重复上次步骤,并非是重现bug,bug不一定能够重现;
–throttle模拟人的思考时间,单位为毫秒,一般设置为300;
–ignore-crashes忽略奔溃,程序运行奔溃时加上该参数,会继续运行直到运行完事件数;
–ignore-timeouts忽略响应超时,程序运行响应超时时,会继续跳过继续运行,直到事件数运行完;
–ignore-security-exceptions用于指定当应用程序发生许可错误时,加上该参数会继续运行事件数;
–monitor-native-crashes监视系统中本地代码发生的崩溃,加上该参数奔溃时会继续运行事件数;
四:重要的命令
adb devices(检查是否连接上了设备)
adb shell dumpsys window w|findstr name= (查看当前正在运行app的包名)
adb shell monkey -p 包名 --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes -v -v 10000 2>E:\disk\error.txt 1>E:\disk\info.txt (万能压测代码,建议用txt文本写好保存,把格式改成.cmd方便直接运行;注意:这种输出是两个txt文档,一个是错误的,一个是正确的;)
五:用文本导出错误的日志
首先Android系统是简版的Linux系统,1表示标准输出流,2表示错误输入留,故输出错误日志:2>&1即可 ;简写代码如下:
adb shell monkey -p 包名 -v 1000 2>E:\disk\error.txt 1>E:\disk\info.txt
六:monkey测试中常出现的错误
anr 无响应
Exception 跟个前缀,一般是java代码出错
crashed 奔溃
OOM 内存泄漏
在导出的日志中搜索这些关键字即可找出错误日志信息;
七:如何关闭monkey:
window关闭 adb shell ps|findstr monkey
linux关闭 adb shell ps|grep monkey
八:
window系统下运行 按ctrl+c无法停止手机运行app
linux系统下按ctrl+c可以停止手机运行app