zoukankan      html  css  js  c++  java
  • monkey测试跑多个apk|monkey命令

    1.如何跑多个apk的monkey?

    黑名单:执行除了黑名单中以外的apk;

    白名单:只执行在白名单中的apk。

    黑名单的设置方法:

    a.创建一个名称为blacklist的txt文档,在文件中输入应用程序的包名,如mms应用,则在文件中输入com.android.mms;

       如果有多个应用程序不想被执行,则在文件中添加多个包名,注意包名与包名之间均用回车键。

    b.将blacklist.txt的文件导入到手机的/data目录下,然后在执行monkey测试的时候使用--pkg-blacklist-file参数再加上blacklist文件的存储路径,其他的参数设置则和测试单一apk没有区别。

    例子:

    monkey --pkg-blacklist-file /data/blacklist.txt -c <options> -s <seed> <限制语句> --throttle <milliseconds> -v 执行次数> d:lacklist_test.txt //执行黑名单以外的应用(注意pkg前面两个‘-’

    白名单的设置方法:

    白名单的设置方法和黑名单的设置方法基本一致,只是在创建txt文档的时候,文件的命令应为whitelist。在执行monkey的时候,只执行白名单中的应用。

    例子:

    monkey --pkg-whitelist-file /data/whitelist.txt -c <options> -s <seed> <限制语句> --throttle <milliseconds> -v 执行次数 > d:whitelist_test.txt //执行白名单的应用(注意pkg前面两个‘-’)

    一、Monkey命令

    1. 标准的monkey 命令
    [adb shell] monkey [options] < eventcount > , 例如:

        adb shell monkey -v 500

    产生500次随机事件,作用在系统中所有activity(其实也不是所有的activity,而是包含 Intent.CATEGORY_LAUNCHER 或Intent.CATEGORY_MONKEY 的activity)。
    上面只是一个简单的例子,实际情况中通常会有很多的options 选项.

    2. 四大类

            常用选项
            事件选项
            约束选项
            调试选项

    具体的命令解释可以看这里:android 压力测试命令monkey详解

    1).一个简单的Monkey命令如下:

        adb shell monkey -p com.example.xystudy -s 500 -v 10000

    2).工作中为了保证测试数量的完整进行,我们一般不会在发生错误时立刻退出压力测试。monkey 测试命令如下:

    /**
     * monkey 作用的包:com.ckt.android.junit
     * 产生时间序列的种子值:500
     * 忽略程序崩溃、 忽略超时、 监视本地程序崩溃、 详细信息级别为2, 产生10000个事件 。
     */
      adb shell monkey -p com.xy.android.junit -s 500 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v 10000 > E:monkey_logjava_monkey_log.txt

    3).对了,如果monkey事件无法触发,或出现这种情况** SYS_KEYS has no physical keys but with factor 2.0%.
    在命令中加入–pct-syskeys 0,如下:

      adb shell monkey -p com.android.browser --pct-syskeys 0 -v 500

    二、强制停止Monkey测试

    adb shell ps | awk '/com.android.commands.monkey/ { system("adb shell kill " $2) }'  

  • 相关阅读:
    微服务框架核心问题
    django restframework 全局异常处理,编写自定义custom_exception_handler
    django 异常处理中间件
    drf_yasg2 定制swagger
    redis-django
    django 权限
    django restframework 多对多的批量修改,基于逻辑删
    python3 动态绑定
    Django restframework 逻辑删除
    django restframework 多对多模型
  • 原文地址:https://www.cnblogs.com/hyf20131113/p/11867555.html
Copyright © 2011-2022 走看看