MonkeyTest 测试流程

1、常用的命令参数说明:

-s

seed值,设置这个参数的主要作用是程序员可以重复执行这个命令,seed值相同则monkey测试序列也大致一样。

-p 指定要测试的包,参数跟的是apk的package id

--pct-touch

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

--pct-motion

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

--pct-nav

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

--pct-majornav

调整“主要”导航事件的百分比(中间按键、回退按键、菜单按键)

--pct-syskeys

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

--ignore-crashes

通常,当应用程序崩溃或发生任何失控异常时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成

--ignore-timeouts

通常,当应用程序发生任何超时错误(如“Application Not Responding”对话框)时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成

--ignore-security-exceptions

通常,当应用程序发生许可错误(如启动一个需要某些许可的Activity)时,Monkey将停止运行。如果设置了此选项,Monkey将继续向系统发送事件,直到计数完成

--monitor-native-crashes

监视并报告Android系统中本地代码的崩溃事件

--ignore-native-crashes

通常,当应用程序本地代码发生崩溃时,Monkey将停止运行。如果设置了此选项,Monkey将继续向系统发送事件,直到计数完成

--throttle

在事件之间插入固定延迟。通过这个选项可以减缓Monkey的执行速度

-v

命令行的每一个-v将增加反馈信息的级别,最高级别是3个-v

Count

Monkey执行总次数

2、测试步骤

(1)手机上先安装上apk

(2)手机连接上电脑

(3)启动命令行

(4)输入monkey命令

adb shell monkey -s 1000 -p packageid --pct-touch 20 --pct-motion 20 --pct-nav 20 --pct-majornav 20 --pct-syskeys 20 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes --throttle 300  -v -v -v 36000 > XXX.txt

注意:-s值每次要单设一个随机值,每次的值是不同的

(5)等待命令结束,可以不用人为干预

3、测试报告处理

根据第二步的命令最后把测试日志重定向到了文件XXX.txt,到你执行monkey测试的目录下把文件找出来打开查看,分别搜索exception,anr,crash三个关键词,如果搜索结果有发现这些关键词,则把该日志文件发送给相关的android程序员进行处理。如果未搜索到这些关键字,则说明此次测试结果较理想,没发现异常,以后可以再接着测试。

4、意外情况处理

(1)命令已开始执行但发现命令设置有问题例如忘了设置–s的参数,要怎样才能停止运行呢?

答:monkey是手机内部命令,一旦开始执行无论手机是否还连着电脑,那么它都会坚持到总次数结束才会停止,中途停止的方法是另开一个命令行窗口,执行以下两条命令:

adb shell ps|findstr monkey

adb shell kill -9 pid

例如上图中的结果是:adb shell kill -9 29293

(2)如果不知道要测的应用的package id,可以询问程序员或使用以下方式自己查看:

在命令行上使用adb logcat命令,然后手机上点击此apk,通过logcat上打印的日志查找package id

android monkey测试步骤,android Monkey 测试技巧相关推荐

  1. android计算器设计步骤,Android Studio的简易计算器界面设计

    一.题目 1.如图所示(实际设计,类似此界面样式即可,全屏时,按钮将会纵向拉伸),利用网格布局管理器设计一个居中.满屏计算器,项目名称:clc666b:(666,改成自己的实际编号) 2.加.乘分别用 ...

  2. Android studio 安装步骤

    Android studio 安装步骤 Android studio下载地址 官网 百度网盘 下载好安装包后安装步骤: 新建一个Android 在新建的Android下面建skd.studio.wor ...

  3. Android 系统(212)---monkey实战–测试步骤、常用参数、常规monkey命令

    monkey实战–测试步骤.常用参数.常规monkey命令 [转]monkey实战–测试步骤.常用参数.常规monkey命令 ***(本文转自:https://blog.csdn.net/u01164 ...

  4. Android开发、adb、monkey测试

    一. 手机测试概念 传统手机测试 VS 手机应用软件测试 传统手机测试:指测试手机本身比如抗压,抗摔,抗疲劳,抗低温高温等.也包括手机本身功能.性能等测试. 手机应用软件测试 C/S Client/S ...

  5. Android测试能不能用monk,使用Monkey对apk做稳定性测试

    认识Monkey 官方文档:http://www.android-doc.com/tools/help/monkey.html 什么是Monkey? Monkey是Android中的一个命令行工具,可 ...

  6. android服务器压力测试工具,Android自动化压力测试图解教程——Monkey工具

    有时候我们需要对一个软件进行压力测试,检查该软件的性能.如果是人工进行测试的话,效率会低很多,而且会比较枯燥.这时,中的一个命令行工具Monkey就可以为我们减轻很多重复而又繁琐的工作. 一.Monk ...

  7. 【金阳光测试】--深入Monkey工具和使用--Android系列(3)2014年八月八号

    网上介绍Monkey用法不计其数.我也不想炒剩饭,写的和他们一样.Monkey基本原理是伪随机算法.这个算法我想大致介绍下(不感兴趣的朋友情无视它).伪随机数,或称伪乱数,是使用一个确定性的算法计算出 ...

  8. android 测试网,Android Monkey测试

    Android中的monkey是对app做界面压力测试的一款工具,它可以向模拟器或者真机发送一系列随机的用户操作事件.或者系统事件. 概述 Monkey是android sdk自带的一款命令行工具,适 ...

  9. Monkey测试com.android.browser 发 生类似android.datab

    [DESCRIPTION] monkey测试com.android.browser模块时,可能会遇到如下exception: // CRASH: com.android.browser (pid 17 ...

  10. Android系统(45)--Monkey 测试相关知识

    Monkey 测试相关知识点 Monkey 在开发中非常常见,本篇主要梳理monkey 测试相关知识点.主要包括以下内容 整机 monkey 测试命令 app monkey 测试命令 判断Monkey ...

最新文章

  1. 策略模式(Strategy)
  2. Node核心模块Buffer
  3. python print函数用法_Python3.2中Print函数用法实例详解
  4. linux shell 读取文件指定单行 多行 连续行 倒数几行
  5. docker 上关于hyper-v和wsl2的一些要点
  6. 【数据结构与算法】之深入解析“单词接龙”的求解思路与算法示例
  7. 前端学习总结——CSS布局方式之传统布局
  8. CF464E The Classic Problem(主席树+哈希+最短路)
  9. java学习(116):arraylist集合实现类
  10. 喝什么汤对肝脏有好处?
  11. html5对属性布尔的值设定,如何在Javascript中设置HTML5必需属性?
  12. 机器学习中对不均衡数据的处理方法
  13. 9月29日 胶囊网络
  14. paip.提升效率---request自动绑定domain object
  15. mysql性能优化总结详解:MySQL数据库从原理到高性能实战
  16. MOSS 2007 功能概述
  17. fullpage初使用
  18. PL330 DMAC笔记(1) - 简介
  19. Mac (M1) 软件及环境搭建
  20. Android MIntegral广告SDK接入

热门文章

  1. pandas.Series
  2. 概率论与数理统计基础
  3. Keras中CNN联合LSTM进行分类
  4. 异构计算全新升级,阿里云全方位释能人工智能产业
  5. 硅谷卖场里看家庭监控设备:Dropcam难撼传统DVR系统
  6. 第一次冲刺-个人工作总结06
  7. java中报错java.sql.Timestamp cannot be cast to java.sql.Date
  8. mdadm管理raid
  9. WPF Summary:XAML的介绍
  10. 保护站点子目录的文件