Android Monkey搭建 你不用了解的

取之于网,用之于网。本为过路人,姑且搬运中

-

一、PC端 环境搭建(基于win10专业版)

    安装JDK(非必须)

        JDK官网下载

        安装好后在电脑的环境变量中进行配置(控制面板\系统和安全\系统\高级系统设置\高级\环境变量\\编辑Path变量\新建\输入jdk路径)

        

    安装SDK

        SDK官网下载

        安置好后在电脑的环境变量中进行配置(控制面板\系统和安全\系统\高级系统设置\高级\环境变量\\系统变量\新建\输入sdk相关信息\确定)

        参照上面JDK的步骤在path变量中添加sdk的相关路径 (%ANDROID_SDK%\platform-tools;%ANDROID_SDK%\tools)


    验证

        在cmd中输入java -version,如果有显示java version 信息则验证jdk成功,如果提示没有java命令则失败,需要检查是否配置路径正确。

        在cmd中输入adb devices,如果提示没有adb命令则失败,其余提示则成功。


二、Device端 (Android手机)

    获取Monkey对象

        通过adb shell pm -l(也可以通过adb shell + pm list package)获取设备中所有的package包名

    简易开始

        从上面的包名中选出你想要的对象,将其放入txt文件中,每个包名以行隔开

        将此txt文件push到data/下(push目录可自定义)

        执行adb shell monkey --pkg-blacklist-file /data/xxx.txt --throttle 1000 3600 > log.txt

        #--pkg-blacklist-file 参数后面的文件为白名单文件,也就是系统中除开这个文件里列出的包名以外均为要跑monkey的包。

        #--pkg-blacklist-file 参数后面的文件为黑名单文件,也就是系统中只有这个文件里列出的包要跑monkey。两者不能同时出现。

        #--throttle 参数后面为事件频率,单位ms,即每次事件的间隔。

        #3600 表示多少次事件,此值随意。此值X上面的频率,即可得出monkey要跑多久,按上例monkey要跑1000MS X 3600为1小时

        #> 为定向,上例是定向到PC上当前目录的log.txt文件中。即可心> c:\log.txt到PC上,也可以> /data/log/tt.txt到设备中。

        #1> 2> 分流定向,1> log.txt表示标准流输出到PC的log.txt, 2 > /data/log/log.txt 表示异常流输出到设备的/data/log/log.txt文件中。


参数大全

    调试类

         --dbg-no-events:初始化启动的activity,但是不产生任何事件。

        --hprof:指定该项后在事件序列发送前后会立即生成分析报告 —— 一般建议指定该项。

        --ignore-crashes:忽略崩溃

        --ignore-timeouts:忽略超时

        --ignore-security-exceptions:忽略安全异常

        --kill-process-after-error:发生错误后直接杀掉进程

        --monitor-native-crashes:跟踪本地方法的崩溃问题

        --wait-dbg:知道连接了调试器才执行monkey测试。

    约束类

        -p:指定有效的package(如不指定,则对系统中所有package有效),一个-p 对应一个有效package, 如:-p com.ckt -p com.ckt.asura;

        -c:activity必须至少包含一个指定的category,才能被启动,否则启动不了;

    一般类

        -s:指定产生随机事件种子值,相同的种子值产生相同的事件序列。如: -s200

        --throttle:每个事件结束后的间隔时间——降低系统的压力(如不指定,系统会尽快的发送事件序列)。如:--throttle100

        --pct-touch:指定触摸事件的百分比,如:--pct-touch5% 

        --pct-motion (滑动事件)

        --pct-trackball (轨迹球事件) 

        --pct-nav (导航事件 up/down/left/right)

        --pct-majornav (主要导航事件 back key 、 menu key)

        --pct-syskeys (系统按键事件 Home 、Back 、startCall 、 endCall 、 volumeControl)

        --pct-appswitch (activity之间的切换)

        --pct-anyevent(任意事件)

    打印类

        --help:打印帮助信息

        -v:指定打印信息的详细级别,一个-v增加一个级别, 默认级别为0。最高为2,即-v -v -v


三、 便利化

使用bat脚本

#verson@auto

#20200630

echo off

rem set utf-8 page

chcp 65001

rem get time

set cur_month=%date:~8,2%

set cur_day=%date:~5,2%

set cur_date=%cur_month%-%cur_day%

set cur_time=%time:~0,8%

set monkey_dir=mk%cur_date%

set monkey_pm_file=pmlist.txt

set whitelist_file=whitelist.txt

set whitelist_bk_file=whitelist_backup.txt

set log_file=log.txt

echo monkey_dir is %monkey_dir%

echo monkey_pm_file is %monkey_pm_file%

rem entry workspace /Desktop/monkey

cd Desktop

mkdir monkey

cd monkey

rmdir %monkey_dir%

mkdir %monkey_dir%

cd %monkey_dir%

rem get all package

del /f %monkey_pm_file%

adb shell pm -l > %monkey_pm_file%

rem interaction

if not exist %whitelist_file% (

echo #verson@auto tips > %whitelist_file%

)

echo If u need hide some app, please take them into whitelist.txt!

echo If u Done, Please click any key to continue!

pause

echo all package in!

adb push %whitelist_file% /data/

cp %whitelist_file% %whitelist_bk_file%

echo lets go!

adb shell monkey --pkg-blacklist-file /data/%whitelist_file% --throttle 700 -v -v -v 9999999 > %log_file%


使用python脚本

待续

使用shell脚本

同上

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,948评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,371评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,490评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,521评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,627评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,842评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,997评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,741评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,203评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,534评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,673评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,339评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,955评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,770评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,000评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,394评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,562评论 2 349