zoukankan      html  css  js  c++  java
  • Monkey用真机做测试的步骤

    1 必备条件

    1) 手机需要先获取root权限;

    2) 手机和电脑相连(电脑可以访问手机里面的文件)

    2  操作步骤

    1) 使用adb devices 命令查看电脑手机是否相连;

    下图表示手机已连上电脑

     

    2) 使用adb shell 进入测试机中

     

     3) 一般安卓手机的程序包都在data/data目录中的,我们需要进入data/data目录中,输入命令cd data/data,就进入到data/data目录中,ls看当前目录的内容

    出现Permission denied,没有权限访问当前目录(原因可能有两个,第一:手机没有成功获取root权限;第二:不是管理员登录)

    这边确认手机已经获取root权限,原因为第二种

    4) Su命令切换到管理员权限

    此时使用ls就可以成功查看里面的包名了

     

    但是发现我想要测试的安装包并不在这个目录里面

    5) 使用命令查看所有的包名 pm list package –f

    找到自己想测试的包,或者找开发问包名都可以

     

    6) 这里测试的是花生WiFi,包名为(com.nfyg.hsbb)

    7) 基本参数

    1、-p <apackage.name>
    作用:指定包名,Monkey将只访问这些包中的Activity。指定多个包,使用多个-p,一个-p后面接一个包名。
    注:常用参数
    例:adb shell monkey -p com.Android.browser -v 10

    2、–v 表示反馈日志信息级别:Monkey中日志分别有三种级别:精简(默认)、普通、详细,上面运行的结果就是默认的精简。

        语法格式是用 “-v” 来表示日志的级别:

          -v 代表 精简;-vv 或者 -v -v 代表 普通;-vvv 或 -v -v -v 代表 详细。

    注:常用参数

    3、--throttle <milliseconds>  用于指定用户操作(即事件)间的时延,单位是毫秒

    例如:adb shell monkey -p com.Android.browser –throttle 1000 100    每次随机事件中间的间隔时间为1000毫秒,也就是1秒钟

    注:常用参数

    4、--pct-touch <percent> 调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置。

    注意percent代表了这个事件占到所有随机事件的百分比数,多个参数指定的时候,加起来的百分比数不能多于100。剩下的几个参数同理:

    --pct-motion <percent>     motion一般代表的是直线滑动,事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成;

    --pct-trackball <percent>   轨迹事件由一个或几个随机的移动组成,有时还伴随有点击;

    --pct-nav <percent>           早期Android手机上的up/down/left/right按键;

    --pct-majornav <percent>  引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键; 

    --pct-syskeys <percent>     这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键;

    --pct-appswitch <percent> 在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法;

    --pct-anyevent <percent>   它包含了所有其它类型的事件,如:按键、其它不常用的设备按钮等等

    例如:adb shell monkey -p com.tencent.mm --pct-touch 50 --pct-trackball 30 100    执行100次的随机事件中,有50%的touch事件和30%的轨迹球事件,其他事件随机比例分布。

    5、-s <seed>    用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。

    例如:adb shell monkey -p com.tencent.mm –s 10 100    

    运行两次测试的效果是相同的,因为模拟的用户操作序列(每次操作按照一定的先后顺序所组成的一系列操作,即一个序列)是一样的。操作序列虽然是随机生成的,但是只要我们指定了相同的Seed值,就可以保证两次测试产生的随机操作序列是完全相同的,所以说Monkey是伪随机的。

    6、adb shell monkey --help  查看所有命令

    调试用:

    1、--ignore-crashes
    作用:通常,应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
    注:常用。

    2、--ignore-timeouts
    作用:通常,应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
    注:常用。

    3、--ignore-security-exception 
    作用:通常,当程序发生许可错误(例如启动一些需要许可的Activity)导致的异常时,Monkey将停止运行。设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
    注:常用。

    8) 可以使用exit退出shell命令,也可以在shell里面运行monkey命令;

    9) 以下是简短的操作事例:

     

    想接什么参数可以自己添加

    -p:后面接包名;

    -V:日志级别;

    50:随机点击的次数;

    >:E/a.txt:表示将运行的日志放在电脑上的E盘里面的a.txt文件中

  • 相关阅读:
    GNU make manual 翻译(九十九)
    GNU make manual 翻译( 九十五)
    Shell的 for 循环小例子
    makefile中对目录遍历的小例子
    GNU make manual 翻译(九十三)
    GNU make manual 翻译( 一百)
    GNU make manual 翻译( 九十七)
    GNU make manual 翻译( 九十八)
    mapserver4.8.3 的readme.win32的中文翻译文件
    遥控器编程
  • 原文地址:https://www.cnblogs.com/crystalpig/p/9322505.html
Copyright © 2011-2022 走看看