一、环境准备

1、JDK

2、Android SDK

二、JAVA环境的搭建

1、JDK 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

2、JDK 配置环境变量,此处就不多叙述了,不会的可以查看小编以前写的关于JDK环境变量配置的教程。

链接地址:https://www.jianshu.com/p/ee18a69e137d

三、Android SDK环境

1、下载Android SDK(最新版)

下载地址:http://tools.android-studio.org/index.php/sdk/

2、下载.exeg格式和zip格式均可,小编下载的是zip格式:android-sdk_r24.4.1-windows.zip

image.png

3、下载完成以后解压Android SDK文件,里面有两个应用程序: “SDK Manager.exe”(负责下载或更新SDK包) 和 "AVD Manager.exe"(负责创建管理虚拟机),如图所示:

image.png

4、运行“SDK Manager.exe”进行SDK下载,选择自己想安装的 Android 版本,然后点击“Install X packages”安装,如图所示:

image.png

5、在新出现的界面上,选择接受并遵守所有许可内容(Accept All),再点击 “Install”

image.png

6、进入漫长等待时间,这个时间可以干点别的,比如看看电影,撸一把游戏等等!!!

image.png

7、安装好后,在 Android SDK 管理器界面上你所选的包后面会显示“Installed”,表示已经安装好了。

image.png

8、安装完之后,先设置Android的环境变量,新建ANDROID_HOME环境变量,变量值为sdk路径

image.png

9、配置SDK下的tools与platform-tools的环境变量,在Path中添加 %ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

image.png

10、验证环境是否安装成功,出现如下图表示成功

image.png

四、启动Monkey测试环境,执行测试

1、注意:启动Monkey测试环境必须要先启动Android虚拟机或者连接上真机。

2、此处,小编是以真机为例进行Monkey测试。

3、将手机连上电脑—打开开发者模式—开启USB调试模式(电脑必须装有手机的驱动)

4、查看测试手机连接是否正常,“win+R”输入cmd进入黑窗口输入adb devices显示设备号即连接正常

image.png

5、输入adb shell命令,如图所示表示进入成功

image.png

6、执行APP测试,包名可以通过shell命令获取或者可以直接找开发要,命令如下:执行前先进入shell中

pm list packages #列出设备所有包

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

pm list packages com.xxx.zz #查找指定包是否存在

pm list packages -d #输出禁用的包。

pm list packages -e #输出启用的包。

pm list packages -s #输出系统的包。

pm list packages -i #输出包和安装信息

pm list packages -u #输出包和未安装包信息

pm list packages -f #输出包和包相关联的文件

pm list packages -3 #输出所有第三方包

pm list packages --user #根据用户id查询用户设备所有包,user_id指连接的设备,顺序从零开始

备注:如果没有进入shell中,以上命令前加adb shell 如:adb shell pm list packages

所有包.png

指定包.png

user_id包.png

一个测试机.png

备注:命令有很多就不在此一一列举,可自行百度进行查找。

7、对指定包进行测试命令如下

monkey -p 包名 点击次数(随机操作) monkey -p com.xxxx 1000

image.png

8、Monkey测试完成,看见Monkey finished 表明本次的Monkey没有异常,测试通过。如图所示:

image.png

9、带有日志等级执行命令:monkey -p your.package.name -v -v -v 1000 如图所示:

image.png

10、日志输出adb shell monkey -p 包名 -v -v 100 >F:\monkey_log.txt

image.png

11、执行完以后会在相应的F盘下生成monkey_log.txt

image.png

12、打开日志,查看日志信息

image.png

备注:日志导出之前先不要进shell,进入adb shell后就相当于进入linux的root下面,没有权限在里面创建文件,切记、切记、切记,重要事情说三遍!!!

五、Monkey参数

1、adb shell monkey -p com.xxx.zz --throttle 500 -v -v -v 1000 > F:/monkey_log.txt

adb shell : 是进入shell 也可和后面的语句分开写

-p : 参数是指定一个包或多个,两个再 -p 包名

throttle 500 : 响应时间,500毫秒

-v -v -v : 三级详细信息 ,

1000 : 执行的操作量

F:/monkey_log.txt :将结果日志存储到F盘下面取名为monkey_log.txt

2、-help 查看所有命令

3、-p说明:

参数-p用于约束限制,用此参数指定一个或多个包(Package)。指定

包之后,Monkey将只允许系统启动指定的APP。如果不指定包,Monkey将允许系统启动设备中的所有

APP。

指定一个包: adb shell monkey -p com.xxx.zz -v 100

指定多个包: adb shell monkey -p com.xxx.zz -p com.yyy.nn -v 100

4、-v说明:日志输出的详细程度

-v:只提供启动、测试完成和最终结果等较少的信息。即一级日志信息

-v -v :提供了较为详细的测试信息,包括每个发送到Activity的事件信息。即二级日志信息

-v -v -v :提供了更多的详细信息,测试中选中或未选中的Activity信息。即三级日志信息

5、-s说明:伪随机数生成器的seed值,Monkey测试是随机的,加一个seed值(所以是伪随机),方便复现问题。

如果用相同的seed值再次运行Monkey,它将生成相同的事件序列

adb shell monkey -s com.xxx.zz -v 500

adb shell monkey -p com.xxx.zz –s 10 1000

6、--throttle说明:用户事件间隔时间,单位是毫秒

adb shell monkey -p com.xxx.zz --throttle 500 1000

7、--ignore-crashes说明:当应用程序崩溃时,Monkey是否停止运行。如果使用此参数,即使应用程序崩溃,Monkey依然会发送事件,直到事件计数完成。

adb shell monkey -p com.xxx.zz --ignore-crashes 10000 程序出现崩溃不会停止,直到时间完成

adb shell monkey -p com.xxx.zz -v 10000 程序出现崩溃会停止

8、--ignore-timeouts说明:应用程序发生任何超时错误(如“Application Not responding”)Monkey是否停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。

adb shell monkey -p com.xxx.zz --ignore-timeouts 10000

9、--ignore-security-exception说明:用于指定当应用程序发生许可错误时(如证书许可,网络许可等),Monkey是否停止运行。设置此项,应用程序发生许可错误,Monkey依然会发送事件,直到事件计数完成。

adb shellmonkey -p com.xxx.zz --ignore-security-exception 1000

10、--kill-process-after-error说明:遇到错误时,应用程序停止运行并保持在当前状态

11、停止:adb shell “ps |grep monkey” 记住第二个字段(m) adb shell kill m

或者adb shell "pid=`ps | grep monkey | awk '{print $2}'` && kill $pid"

12、--pct- {+事件类别}{+事件类别百分比} 注意:各事件类型的百分比总数不能超过100%

--pct-touch 说明:调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置;

adb shell monkey -p com.xxx.zz --pct-touch 10 1000

--pct-motion 说明:调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成);

adb shell monkey -p com.xxx.zz --pct-motion 20 1000

--pct-trackball 说明:调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击);

adb shell monkey -p com.xxx.zz --pct-trackball 30 1000

--pct-nav 说明:调整“基本”导航事件的百分比(导航事件由来自方向输入设备up/down/left/right组成);

adb shell monkey -p com.xxx.zz --pct-nav 40 1000

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

adb shell monkey -p com.xxx.zz --pct-majornav 50 1000

--pct-syskeys 说明:调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键);

adb shell monkey -p com.xxx.zz --pct-syskeys 60 1000

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

adb shell monkey -p com.xxx.zz --pct-appswitch 70 1000

--pct-anyevent 说明:调整其它类型事件的百分比。它包含所有其它类型的事件,如:按键、其它不常用的设备按钮、等等。

adb shell monkey -p com.xxx.zz --pct -anyevent 100 1000

adb shell monkey -p com.xxx.zz --pct-anyevent 40 --pct-appswitch 50 1000

注意:各事件类型的百分比总数不能超过100%

最后给大家一个复合型列子:

adb shell monkey -p com.xxx.zz --throttle 300 -v -v -v --ignore-crashes --ignore-timeouts --pct-touch 40 --pct-motion 25 --pct-appswitch 10 --pct-rotation 5 >F:\monkey_log.txt 2000

关于Monkey测试的命令及其参数的使用还有很多,大家可自行百度查找!

至此,Monkey测试环境搭建及测试执行结束,希望此篇文章对大家所有所帮助。

monkey测试linux设备,Monkey测试环境搭建及测试执行相关推荐

  1. linux设备驱动论坛,linux设备驱动开发环境搭建 (amoBBS 阿莫电子论坛)

    <>(Linux Device Driver,简称LDD) 一书是linux驱动程序开发的经典,这里阐述的是怎么编写一个 hello 的内核驱动程序. 配置的环境和程序对应 LDD 第二章 ...

  2. Linux 下的 ActiveMQ C++ 环境搭建与测试

    Linux 下的 ActiveMQ C++ 环境搭建与测试 一.下载安装jdk jdk官网下载地址:https://www.oracle.com/technetwork/java/javase/dow ...

  3. 【LoRa32U4II】介绍以及基于Arduino IDE编译环境搭建及测试

    目录 LoRa 模块LoRa32u4 II介绍 LoRa32u4 II 资料下载 LoRa32u4 II 规格介绍 LoRa32u4 II 脚位说明 编译环境介绍 电脑系统 编译软件 Arduino需 ...

  4. tensorflow环境下的识别食物_Tensorflow object detection API 搭建属于自己的物体识别模型——环境搭建与测试...

    1.开发环境搭建 ①.安装Anaconda 建议选择 Anaconda3-5.0.1 版本,已经集成大多数库,并将其作为默认python版本(3.6.3),配置好环境变量(Anaconda安装则已经配 ...

  5. Tensorflow object detection API 搭建属于自己的物体识别模型1环境搭建与测试

    https://blog.csdn.net/dy_guox/article/details/79111949 后续博客地址(附带视频教程) ------------------------------ ...

  6. Linux下服务器基本环境搭建步骤详解(三种软件安装方式)

    Linux下服务器基本环境搭建 小伙伴们注意看:下面使用三种方式分别安装JDK.Tomcat.Docker进行演示 操作系统基于CentOs7. 文章目录 Linux下服务器基本环境搭建 前言 一.L ...

  7. 嵌入式Linux下的Qt环境搭建

    嵌入式Linux下的Qt环境搭建 本文介绍如何在嵌入式Linux开发板上配置Qt运行环境,并进行Qt程序运行测试 一.tslib编译 要想Qt 支持触摸需要编译 tslib ,以生成触摸相关插件. t ...

  8. Linux 下ffmpeg的环境搭建与安装

    Linux下ffmpeg的环境搭建与安装 背景 [FFmpeg是什么] 1· FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源软件.采用LGPL或GPL许可证,提供了录制.转 ...

  9. Linux下Java开发环境搭建

    最近刚开始玩Linux,搞开发搭建环境是第一步,于是总结了这篇Linux下Java开发环境搭建的博客,记录一下我爬过的坑. 一.JDK的下载 jdk8官方下载地址:http://www.oracle. ...

最新文章

  1. 计算机软件uml,计算机软件——UML旅游管理系统
  2. Git子模块引用外部项目
  3. 【python图像处理】图像的读取、显示与保存
  4. 成功解决.sh: line 6: syntax error near unexpected token `do
  5. 2更新字段其中一位_NoSQL之MongoDB——数据更新操作
  6. ThreadPool的使用
  7. 再见丑陋的 Swagger,这个API神器界面更炫酷,逼格更高,体验更好!
  8. 关于 Oracle分页数据重复的问题
  9. 四位数码管树莓派c语言,用树莓派和四位数码管模块做一个时钟
  10. 通过Ftp put命令上传导致文件损坏的解决办法
  11. python取字符串一部分_python,如何获取字符串中的子字符串,部分字符串
  12. [转载]共享软件的注册加密法
  13. linux常用文件及作用总结(profile/.bashrc等)
  14. html5 embed 不自动播放,html5自动播放与 iframe 你管videoautoplay=1不工作?_html5_开发99编程知识库...
  15. OpenGL ES2 0 – Iphone开发指引
  16. mybatis自联表三级菜单
  17. NBUT 1225 NEW RDSP MODE I (规律+快速幂)
  18. 格式化硬盘出现 is apparently in use by the system错误
  19. 使用nuget 打包并上传 nuget.org
  20. stm32(声音传感器控制LED)

热门文章

  1. 【BZOJ 1862】 [Zjoi2006]GameZ游戏排名系统
  2. 全球变暖--2018蓝桥杯省赛
  3. Unity 学习笔记——转自努力的小程序员 总结的很不错,学习了
  4. vscode快捷键 复制代码到上一行,下一行
  5. 个人形象设计之配饰的搭配选择(2)
  6. 大请大家好啊 啊 啊啊啊 啊啊 啊啊 啊啊 啊
  7. NetApp 帮助汽车制造商构建 Data Fabric,以加快创新速度
  8. 2019-2020学年2018级技校网络专业期末试卷
  9. 暖通空调系统数智化 - BLE来赋能
  10. 朗朗与机器人合奏_震撼!机器人和人类PK弹钢琴!郎朗现场都懵了!