编辑推荐:

本文来自于网络,介绍了自动化测试工具Monkey使用过程,Monkey命令参数说明,注意事项等知识。

一、Monkey简介

Monkey测试是Android平台下自动化测试的一种快速有效的手段,通过Monkey工具可以模拟用户触摸屏幕、滑动轨迹球、按键等操作来对模拟器或者手机设备上的软件进行压力测试,检测该软件的稳定性、健壮性。它的原理是向系统发送伪随机的用户事件流(如按键输入、触摸输入、手势输入等),实现对正在开发的应用程序进行压力测试。至于Monkey的名字是有何而来的呢?这个没有去怎么考究,Monkey这个工具就是一个调皮的猴子,在App中乱按、乱摸、乱滚、乱跳。

二、使用过程

1.安装你要测试的apk(秽话...)

2.在电脑上运行cmd,找到Android SDK的playform-tools目录,并输入命令

adb shell monkey -p com.xxx... -v 10000 >D:\monkeylog.txt

3.回车执行,手机进入monkey测试,测试结束后log日志在对应设置的路径位置(PC)

三、Monkey命令参数说明

通过上文我们已经了解到,通过adb命令开始执行monkey测试,monkey命令的基本格式为:

adb shell monkey –p com.xxx –v 10000 这条命令中,-p代表一个包,即我们monkey测试的对象,一条命令可以有多个包,每添加一个包则需要一个-p,如

adb shell monkey –p 包1 –p 包2…..com.xxx 就是我们需要执行测试的对象-v

代表返回结果的详尽程度,分为3级,分别是level 1 level 2 level 3,级别越高,返回的log会更详尽,1级为-v

,2级为-v –v,3级为 –v –v –v .更为详细格式:

adb shell monkey -p com.xxx...--ignore-crashes --ignore-timeouts

--throttle 500 -v -s 3500 10000 > D:\monkeylog.txt

--ignore-crashes代表当应用程序崩溃时,如果执行次数不到将继续执行,默认不设置应用崩溃Monkey会停止

--throttle 500 代表间隔时间,即每次操作的时间间隔。为了更好的模拟用户操作,需要在每次操作之间增加时间间隔,单位是毫秒,此命令的含义就是增加500ms的时间间隔。

-s 3500 代表伪随机数 10000 代表执行次数,根据实际测试需要来修改。

通过参数的设置,可以完成更多的调试功能,Monkey命令行参数中文相关说明见下表。官方英文版

四、注意事项

如果提示error: unknown host service说明adb的5037端口被哪个应用程序占用的被占用

解决办法:运行cmd输入命令netstat -ano | findstr "5037",查看到对应的进程的PID是12216

Ctrl+alt+delete,打开任务管理器,查看是哪个进程占用了12216

这里是LdsMobileLink.exe(鲁大师手机助手)占用了此进程,需要将该进程结束

如果无法结束进程,那么我们可以修改adb的端口号

1.打开我的电脑右键属性-高级系统设置-环境变量-系统变量-新建

2.变量名:ANDROID_ADB_SERVER_PORT 变量值:6666(你要的端口号这里为6666)

3.打开cmd输入命令netstat -ano |findstr "6666",没有返回任何结果证明该端口号没有被占用,如果有请重新设置变量值

4.在Android SDK的playform-tools目录,并输入命令adb kill-server,回车,再输入命令adb

start-server,回车。

红色位置说明重启adb成功并且端口号为6666,若端口号不正确,请重新打开cmd,还是不对那就是环境变量设置有误。如果想设置为默认端口号只需要将添加的环境变量删除

android自动化测试之手机自动化测试工具基本原理,学习笔记之Android自动化测试工具Monkey...相关推荐

  1. Android自动化测试之Monkey命令使用及monkey脚本编写

    系列文章 Android自动化测试环境部署及adb sdkmanager avdmanager Monitor DDMS工具使用及命令详解 Android自动化测试之Monkey使用及monkey脚本 ...

  2. Android自动化测试之MonkeyRunner MonkeyDevice MonkeyImage API使用详解 脚本编写 脚本录制回放

    MonkeyRunner 系列文章 MonkeyRunner简介 MonkeyRunner 三大模块 MonkeyRunner API MonkeyDevice API MonkeyImage API ...

  3. Android自动化测试之MonkeyRunner录制和回放脚本

    Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 andro ...

  4. Android学习笔记:Android基础知识点(不断更新中)

    1.Android学习笔记:OkHttp 2.Android学习笔记:更新UI的方法(UI线程和非UI线程) 3.Android学习笔记:Volley 4.Android学习笔记:Handler 5. ...

  5. 学习笔记之Android调用系统相册选择图片

    文章目录 前言 使用步骤 小结 参考资料 前言 在相册里选择图片上传也是很常见的功能了例如微信朋友圈等等.但是他们是自定义的选择器,可以选择多张图片并修改.这里我们讲一个最简单的:调用系统的相册选择一 ...

  6. 元数据管理工具Atlas学习笔记之集成

    文章目录 背景 环境 Atlas安装 solr Atlas Atlas启动 启动Hadoop.ZooKeeper.HBase.Kafka.Hive和MySQL Hadoop 启动ZooKeeper 启 ...

  7. Kail学习笔记-kali信息搜集工具之IKE-Scan

    Kail学习笔记-kali信息搜集工具之IKE-Scan 一.用法 二.选项 三.示例 一.用法 ike-scan [选项] [主机地址...] 必须在命令行上指定目标主机,除非为–file选项,在这 ...

  8. Telerik移动应用开发工具AppBuilder学习笔记(二)--IDEs

    Telerik移动应用开发工具AppBuilder学习笔记 之 IDEs Telerik AppBuilder的IDE有四种: 1,在线IDE,地址:https://platform.telerik. ...

  9. Kail 学习笔记-kali信息搜集工具之Dmitry

    Kail 学习笔记-kali信息搜集工具之Dmitry DMitry(Deepmagic Information Gathering Tool)是一个一体化的信息收集工具.它可以用来收集以下信息: 根 ...

最新文章

  1. php四排序-选择排序
  2. 打开一个解决方案时弹出“项目所需的应用程序未安装,确保已安装项目类型(.csproj)的应用程序”问题的解决方案
  3. 安装Microsoft Hololens开发环境
  4. Private Data Manipulation in Optimal Sponsored Search Auction
  5. indexOf和binarySearch的对比
  6. python学完面向对象之后_Python学完基础语法后,再往后应该学什么?
  7. 诗与远方:无题(二十六)- 曾经给一个妹子写的一首诗
  8. 腾讯IM可以实现聊天信息保存到本地服务器吗
  9. 猪肉都被绑上了“家族标签”,大数据已波及到农牧业!
  10. 笔记本电脑怎样连接打印机_“小小”打印机 | 惠普M17w迷你激打
  11. (转载)Box2D v2.3.0 用户手册中文版(第1章)-导言
  12. 仿layui风格漂亮easyui主题皮肤美化
  13. SAS入门教程1---SAS系统简介
  14. cjson构建_cJSON的构造和解析
  15. LeetCode 75 分类颜色
  16. python zemax_python的用途和优点
  17. 笔记:常见的约束问题求解算法——乘子法和Frank-Wolfe算法
  18. c51中的_crol_和_cror_
  19. [oeasy]python0020换行字符_feed_line_lf_反斜杠n_B语言_安徒生童话
  20. 亚马逊领导力准则14条

热门文章

  1. python屏幕截图并保存_用Python保存屏幕截图(不使用PIL)
  2. 如何用java编写小游戏
  3. java精灵召唤_精灵召唤之梦游仙境BT版
  4. selenium判断是否出现弹窗_如何判断宝宝是否有蛔虫?若出现这6种“表现”,可以考虑驱虫了...
  5. 水果盛宴(fruit)
  6. DSS代码解读-SRR_DSS_initTask(十二)
  7. keepalived notify_stop 脚本的问题
  8. java被七整除的数_如何判断一个数可被7整除?
  9. EF Core入门(1)——基于数据库优先的环境配置
  10. Docker入门到深入-知识点总结