常用adb命令及monkey命令详解

一、常用adb命令
1、adb devices:查看已连接的设备
2、adb version:查看adb的版本序列号
3、adb -s <设备名字>:指定某设备做什么(设备名字用1的方法可以查看)
4、adb install <安装包.apk>:安装应用(写清楚apk的完整路径)adb -s <设备名字> install <安装包.apk>:指定设备安装应用
5、adb shell:通过远程shell命令来控制模拟器/设备
6、exit:退出shell远程连接,回到原路径。(Ctrl+d,退出shell,回到默认路径)
7、adb pull <设备端路径> <pc端路径>:将指定的文件从设备/模拟器上拷贝到pc端(后面的pc端路径可以不指定,默认存储在当前路径下)。例: adb pull /sdcard/log.txt c:/monkey
8、adb push <pc端路径> <设备端路径>:将指定的文件从pc端拷贝到设备/模拟器上
9、adb shell pm list packages:列出电脑端所有apk的包名
10、adb logcat:查看pc端的日志输出。adb shell界面只需输入logcat,查看设备端日志输出(退出Ctrl+c)
二、Monkey命令扩展
1、最简单的monkey执行语句:(adb shell)monkey –p com.jianjiexuan.na –v 500 (对com.jianjiexuan.na 这个程序包单独进行一次500次的monkey测试)
名词解释:-p:用于约束限制,用此参数指定一个或多个包。指定包之后,Monkey将只允许系统启动指定的APP。如果不指定包,Monkey将允许系统启动设备中的所有APP。指定多个包:monkey -p –p -p -v 500-v:用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别,分别对应的参数如下表所示:
日志级别 Level 0
例 monkey –p com.jianjiexuan.na –v 500说明:缺省值,仅提供启动提示、测试完成和最终结果等少量信息
日志级别 Level 1
例 monkey –p com.jianjiexuan.na –v -v 500说明:提供较为详细的日志,包括每个发送到Activity的事件信息
日志级别 Level 2
例 monkey –p com.jianjiexuan.na –v -v -v 500
说明:最详细的日志,包括了测试中选中/未选中的Activity信息
2、延时及固定序列(adb shell)monkey -s 100 -p com.jianjiexuan.na – -throttle 1000 -v 500 (每次执行一次有效的事件后休眠1000毫秒)(adb shell)monkey -p com.jianjiexuan.na – -throttle 1000 – -randomize-throttle -v 500 (每次执行一次有效事件后随机延时0-200毫秒)名词解释:-s:用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。出现问题下次可以重复同样的系列进行排错。–throttle:固定延时,用于指定用户操作(即事件)间的时延,单位是毫秒;–randomize-throttle:随机延时,用于指定用户操作(即事件)间的时延,单位是毫秒。
3、保存monkey运行结果1)保存在PC中adb shell monkey –p com.jianjiexuan.na –v 500 > d:\monkey\log.txt 2)保存在手机中手机端进入shell模式:adb shell monkey –p com.jianjiexuan.na –v 500 > /mnt/sdcard/monkey/log.txt
4、monkey事件百分比的调整(adb shell)monkey -p com.jianjiexuan.na -v – -pct-anyevent 100 500指定多个类型事件的百分比:monkey -p com.jianjiexuan.na -v –pct-anyevent 50 –pct-appswitch 20 500
名词解释:–pct-****:
monkeygai01.png

设置某个事件的百分比。后面接数字(0-100),100即100%的概率执行该事件注意:各事件类型的百分比总数不能超过100%。如果不进行设置则显示默认百分比。
5、正在运行的monkey如何终止如在命令窗口端直接打印结果,想要停止monkey的运行,那么就再打开一个cmd命令窗口查看monkey的进程:adb shell ps | find “monkey”kill掉该进程就可以adb shell kill + 进程编号 ,

posted @ 2020-10-22 11:39  我只吃大碗  阅读(3490)  评论(0编辑  收藏  举报