本文主要介绍APP的压测实践,Monkey高级参数的应用,Monkey Script常用命令介绍,MonkeyScript实战等内容。。

准备测试环境

准备Android SDK环境 下载 AndroidSDK

准备python环境 下载 python

APP的压测实践一

压测过程step1:手机调试到开发者选项,将USB调试选上。(【设置】-【关于手机】-【点击版本号5/6次】进入开发者选项,点击【开发人员选项】-【勾选USB调试】)

压测过程step2:确认手机和电脑已经成功连接,确认连接命令:adb devices

压测过程step3:安装测试APP 命令行 adb install package.apk

压测过程step4:发送压力指令:adb shell monkey 1000

压测过程setp5:获取app包名 adb logcat | grep START

cmp=包名/ 魔镜包名:com.cmiot.magicmirror

压测过程step6:给指定包打压力

adb shell monkey -p package 1000

Monkey高级参数的应用

1.throttle参数 指定事件之间的间隔

adb shell monkey --throttle < milliseconds >

adb shell monkey -p package --throttle 1000 10

2.seed参数 指定随机生成树的seed值

adb shell monkey -s < seed> < event-count>

adb shell monkey -p package -s 100 50

3.触摸事件

设定触摸事件百分比

adb shell monkey --pct-touch < percent>

adb shell monkey -p package --pct-touch 100 100

adb shell monkey -v -p package --pct-touch 100 100

4.动作事件

设定动作事件百分比

adb shell monkey --pct-motion < percent>

adb shell monkey -v -p package --pct-motion 100 100

5,轨迹球事件

设定轨迹球事件百分比

adb shell monkey --pct-trackball < percent>

6,基本导航事件

设定基本导航事件百分比,输入设备的上,下,左,右

adb shell monkey --pct-nav < percent>

7,主要导航事件

设定主要导航事件百分比,兼容中间键,返回键,菜单键

adb shell monkey --pct-majornav < percent>

8,系统导航事件

设定系统导航事件百分比,HOME,BACK,拨号及音量键

adb shell monkey --pct-syskeys < percent>

9,启动Activity事件

设定启动Activity的事件百分比

adb shell monkey --pct-appswitch < percent>

10,不常用事件

设定不常用事件的百分比

adb shell monkey --pct-anyevent < percent>

11,崩溃事件

忽略崩溃和异常 继续运行

adb shell monkey --ignore-crashes < event-count>

12,超时事件

忽略超时事件

adb shell monkey --ignore-timeouts < event-count>

adb shell monkey -v -p package --ignore-carshes --ignore-timeouts 100

Monkey Script常用命令介绍

执行Monkey脚本的命令:

adb shell monkey -f < scriptfile> < event-count>

scriptfile 是个脚本文件

1,DispatchTrackball 命令

2,DispatchPointer命令

3,DispatchString 命令

4,LaunchActivity 命令

5,UserWait命令

6,DispatchPress 命令

MonkeyScript实战

MonkeyScript脚本的编写

通过android-sdk 下面的uiautomatorviewer 中获取坐标点

adb push 脚本文件 /data/local/tmp/ 脚本复制到手机里面命令

monkey -f 脚本名 次数 在手机中执行脚本

比如我把脚本文件导入手机里的命令

adb push C:\Users\Administrator\Desktop\mook.script /data/local/tmp/

执行脚本的命令

adb shell monkey -f /data/local/tmp/mook.script 2

脚本文件内容

type=user

count=10

speed=1.0

LaunchActivity (com.test.demo,com.test.demo.MainActivity)

UserWait(2000)

DispatchPointer (10,10,0,100,50,1,1,-1,1,1,0,0)

DispatchPointer (10,10,1,100,50,1,1,-1,1,1,0,0)

DispatchString(test)

UserWait(1000)

DispatchPress(66)

UserWait(1000)

DispatchPointer (10,10,0,400,150,1,1,-1,1,1,0,0)

DispatchPointer (10,10,1,400,150,1,1,-1,1,1,0,0)

UserWait(6000)

Monkey Script常用命令介绍

monkeyrunner demo.py

#!/usr/bin/python
#-- UTF-8 --
from com.android.monkeyrunner import MonkeyRunner
MonkeyRunner.alert (‘Hello mook friends’,‘This is title’,‘Ok’)



monkeyrunner编写的脚本截图

资源分享

下面是我收集的一些视频资源包

关注微信公众号【程序媛木子】即可免费获取。

Android压力测试相关推荐

  1. android 轨迹球事件,Android压力测试

    原标题:Android压力测试 来源:http://www.uml.org.cn 准备测试环境 准备Android SDK环境 下载 AndroidSDK 准备python环境 下载python AP ...

  2. android服务器压力测试,Android压力测试Monkey工具

    最近在Android程序测试过程中接触到了自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyrunner其它test t ...

  3. 【Android压力测试】monkey压力测试

    1.首先安装adb.java环境 2.下载地址: 链接: https://pan.baidu.com/s/1i5xltpN 密码: ra6g monkey 很简单的理解是 像猴子一样一顿点乱点,看是否 ...

  4. Android压力测试不停开启关闭蓝牙报错

    问题分析 报错log信息如下 09-28 13:06:08.697706 30214 30214 E AndroidRuntime: FATAL EXCEPTION: main 09-28 13:06 ...

  5. Android App压力测试(Monkey和ADB)

    压力测试简介 压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试.通常 ...

  6. android monkey压力测试(二)

    一.什么是Monkey 顾名思义,Monkey就是猴子,  Monkey测试,就像一只猴子, 在电脑面前,乱敲键盘在测试.  猴子什么都不懂, 只知道乱敲 通过Monkey程序模拟用户触摸屏幕.滑动T ...

  7. 伪mac android,Mac,android sdk,monkey压力测试,真机

    1.安装Android SDK http://down.tech.sina.com.cn/page/45703.html 新浪本地下载 安装android sdk,将android-sdk-macos ...

  8. Android Monkey压力测试

    一. JAVA环境的搭建 安装jdk-8u151-windows-x64,可以到官网或者应用中心下载. JAVA环境变量的搭建: 在"我的电脑"-"属性"-&q ...

  9. android monkey压力测试,Android-Monkey 压力测试

    1.Monkey 介绍 Monkey是Android中一个对App进行压力测试的命令行工具,可以向系统发送伪随机的用户事件流对正在开发的App进行压力测试(模拟用户操作App).压力测试主要是为了提高 ...

最新文章

  1. Citus数据分片分布研究(一 在工作节点直接操作表)
  2. 安装使用Frida在Android上进行hook
  3. 理解统计信息(3/6):谁创建和管理统计信息?在性能调优中,统计信息的作用。...
  4. 目前银行利息高还是余额宝利息高?如何选择?
  5. 7-36 社交网络图中结点的“重要性”计算 (30 分)(思路加详解)兄弟们PTA乙级题目冲起来
  6. 通过配置文件登陆有密码的mysql不需要输入密码
  7. Vue + SpringBoot跨域
  8. 常用Openssl命令
  9. Spark Streaming之运行原理
  10. centos6 安装xhprof扩展
  11. GitHub开源项目之“线程池”
  12. springboot核心配置文件 application.properties 或者 yml 常用配置详解
  13. java 云服务器 linux,云服务器Linux部署JavaWeb项目
  14. Educoder Matplotlib和Seaborn三维图 第2关:曲面三角剖分
  15. 设计模式-设计原则-迪米特法则
  16. html 点击 重置 单选,单选按钮上需要的Html 5不会重置(Html 5 required on radio button wil not reset)...
  17. PS快捷键大全 打开置入 图层操作的快捷键 新建图层 填充上色 前景色背景色等的快捷键
  18. 区块链开发主流编程语言居然是Go语言!
  19. 专治不明觉厉:深度解密IBM黑科技量子计算机
  20. 3 a 5的c语言表达式,C语言中,赋值表达式:(a=3*5)=4*3,为什么整个表达式的值为1,表达式x=(a=3,6*a)和表达式x=a=3,6*a分别是...

热门文章

  1. 2017年美国计算机科学,2017年U.S.News美国大学研究生计算机科学专业排名TOP10
  2. 三星T7装Linux系统,Ubuntu已成为三星ARTIK 5/7的主力GNU/Linux系统
  3. 第15周实践项目-洗牌(范型程序设计)(1)
  4. java http请求发送unicode_c++ 使用httpclient获取网页及utf8与unicode之间转码
  5. 面向智能网联汽车边缘网络的分布式端-边协同算法
  6. 显卡刷bios变砖怎么办--关于矿卡,一些惊呆我的骚操作
  7. XUPT—ACM周总
  8. 今日头条18校招第一批算法笔试
  9. 计算机在社会工作和生活中的应用,计算机综合应用能力实训
  10. 二叉树的遍历 中序线索二叉树