提:按照前面的《Monkey环境搭建》先把环境搭建好。

此处为真机测试:

1.首先需要将手机连接到PC,测试连接是否正常,可在cmd里输入adb devices来进行验证;

2.输入adb shell 进入shell命令行

3.获取要测试的APP包名:可以直接问开发,也可以通过在shell命令行中输入以下命令:

  pm list packages  列出所有包名来进行查找

  pm list packages com.xx 查找所有包含com.xx的包

  pm list packages com.xx.yy 查找特定包是否存在

3. (1) 对特定APP包进行测试的命令为 monkey -p com.xx 50 -v  (其中-p指定包名;50为伪随机事件个数;-v为日志详细程度)

(2) 也可以通过adb shell进入手机再发送命令

Monkey基本参数

1、-help 查看所有命令

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

3、–v

 作用:日志输出的详细程度
   -v:除了启动、测试完成和最终结果外只提供较少的信息。
   -v -v (-vv):提供了较为详细的测试信息,如逐个发送到Activity的事件信息。
   -v -v -v (-vvv):提供了更多的设置信息,如测试中选中或未选中的Activity信息。

   注:常用参数

4、-s <seed>

   作用:伪随机数生成器的seed值。

 monkey测试是随机的,产生问题复现很困难,所以人为加一个seed值(所以是伪随机),方便复现。

  例:adb shell monkey -s 123456888 -v 500

注:常用参数

5、--throttle <milliseconds>

  作用:用户事件间隔时间

  如果不设置会以最快速度完成伪随机事件;建议设置300ms(实际用户最快的动作)。

  例:adb shell monkey --throttle 300 -v 500

  注:常用参数

6、--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%的轨迹球事件,其他事件随机比例分布。

调试用:

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

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

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

Monkey测试执行_真机测试(2)的更多相关文章

  1. iOS Sprite Kit教程之真机测试以及场景的添加与展示

    iOS Sprite Kit教程之真机测试以及场景的添加与展示 IOS实现真机测试 在进行真机测试之前,首先需要确保设备已经连在了Mac(或者Mac虚拟机)上,在第1.9.1小节开始,设备就一直连接在 ...

  2. iOS—最全的真机测试教程

    准备 开发者账号 自从Xcode7 出来之后,一般的真机测试不需要开发者账号,也就不需要看这篇教程,只有app具有“推送”等功能的时候,要真机测试就必须要开发者账号和设置证书.苹果只是让你体验一下它的 ...

  3. iOS- 最全的真机测试教程

      想要上架的同学请看:<iOS-最全的App上架教程> 因为最近更新了Xcode 8 ,证书的创建都大同小异,只是在Xcode 8中的设置有一些变化,我就在下面补充,如有什么疑问,请联系 ...

  4. Xcode 真机测试破解方法(转加修改)xcode 4.3 通过

    Xcode 真机测试破解方法(转加修改)xcode 4.3 通过 生成本机证书 应用程序->实用工具->钥匙串访问 菜单:钥匙串访问->证书助理->创建证书, 然后按以下图片顺 ...

  5. iOS真机测试中出现dyld`dyld_fatal_error错误

    最近进入一家新公司,接手了一个之前由外包公司承接的项目.首先吐槽一下项目质量,哎毕竟也憋了很久了. 1.上手项目是打不开的,所有framework静态库全体飘红,一编译七八十错误.最终是偷懒还是什么就 ...

  6. vue菜鸟从业记:完成项目最后一公里之真机测试和打包上线

    最近我朋友王小闰他们公司的项目开发已经进入收尾阶段,前后端并行开发的差不多了,联调也调过了,上篇文章里也讲到了,所谓联调,就仿佛在说“我也不知道我的接口文档写的对不对,我们验证一下吧?我也不知道我的数 ...

  7. Windows 8(64位)如何搭建 Android 开发环境与真机测试(转)

    可以参考http://wenku.baidu.com/link?url=ghU6IFS1WJXLFKfM_0efv9YQEnMDBrdi9CXwirSs5IOLLeUfdIOh8OOVv0DX89Lt ...

  8. iOS系列 基础篇 01 构建HelloWorld,剖析并真机测试

    iOS基础 01 构建HelloWorld,剖析并真机测试 前言: 从控制台输出HelloWorld是我们学习各种语言的第一步,也是我们人生中非常重要的一步. 多年之后,我希望我们仍能怀有学习上进的心 ...

  9. 解决Xcode真机测试时ineligible devices的问题

    升级了Xcode到6.3,连接真机测试时,出现不能选择设备.如图: 设备系统版本是8.3的,Xcode连接其他低系统版本的设备做真机测试时就不会有这个问题. 有人说这是Xcode6.3的bug. 我的 ...

随机推荐

  1. ssh免密码登录配置方法

    每次输密码很麻烦,免密登录设置方法按照<ssh免密码登录配置方法>即可,简单来说: 1.终端上执行ssh-keygen -t rsa,生成密钥对(存放在/home/usera/.ssh). ...

  2. [GAN] How to use GAN - Meow Generator

    一篇介绍GAN应用的文章.今后GAN模型学习的主要内容. 中文链接:萌物生成器:如何使用四种GAN制造猫图 原文链接:https://ajolicoeur.wordpress.com/cats/ 项目 ...

  3. Android文档-开发者指南-第一部分:入门-中英文对照版

    发布的博客,排版太不行了,整理下发在百度盘上了: 第一部分:Introduction(入门) 0.Introduction to Android(引进到Android) 1.Application F ...

  4. 网络编程 -- RPC实现原理 -- Netty -- 迭代版本V2 -- 对象传输

    网络编程 -- RPC实现原理 -- 目录 啦啦啦 V2——Netty -- 使用序列化和反序列化在网络上传输对象:需要实现 java.io.Serializable 接口 只能传输( ByteBuf ...

  5. 使用 ssh -R 穿透局域网访问内部服务器主机,反向代理 无人值守化

    一.搭建SSH方向代理 准备: 局域网主机(虚拟主机): 192.168.6.233   CentOS 6.7 阿里云服务器:120.25.68.60   CentOS 6.7 1. 阿里云服务器12 ...

  6. 解决 kubenetes无法创建pod No API token found for service account "default"

    在master中 openssl genrsa -out /etc/kubernetes/serviceaccount.key 修改kube-apiserver.service添加参数 --servi ...

  7. android程序---->android多线程下载(二)

    上篇我们讲到了android中下载的断点续传问题,今天我们开始学习下载的多线程问题.本次的多线程源码下载:androdi中多线程下载的实现代码.有关断点续传的问题,请参见博客:android程序--- ...

  8. Unity Editor工具-代码里复制Component

    //CopyComponent ublic static T CopyComponent<T>(T original, GameObject destination) where T : ...

  9. 【CF587D】Duff in Mafia 二分+前缀优化建图+2-SAT

    [CF587D]Duff in Mafia 题意:给你一张n个点m条边的无向图,边有颜色和边权.你要从中删去一些边,满足: 1.任意两条删掉的边没有公共的顶点.2.任意两条剩余的.颜色相同的边没有公共 ...

  10. E - 棋盘问题

    在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C. ...