Android压力测试
本文主要介绍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压力测试相关推荐
- android 轨迹球事件,Android压力测试
原标题:Android压力测试 来源:http://www.uml.org.cn 准备测试环境 准备Android SDK环境 下载 AndroidSDK 准备python环境 下载python AP ...
- android服务器压力测试,Android压力测试Monkey工具
最近在Android程序测试过程中接触到了自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括android测试框架.CTS.Monkey.Monkeyrunner其它test t ...
- 【Android压力测试】monkey压力测试
1.首先安装adb.java环境 2.下载地址: 链接: https://pan.baidu.com/s/1i5xltpN 密码: ra6g monkey 很简单的理解是 像猴子一样一顿点乱点,看是否 ...
- Android压力测试不停开启关闭蓝牙报错
问题分析 报错log信息如下 09-28 13:06:08.697706 30214 30214 E AndroidRuntime: FATAL EXCEPTION: main 09-28 13:06 ...
- Android App压力测试(Monkey和ADB)
压力测试简介 压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试.通常 ...
- android monkey压力测试(二)
一.什么是Monkey 顾名思义,Monkey就是猴子, Monkey测试,就像一只猴子, 在电脑面前,乱敲键盘在测试. 猴子什么都不懂, 只知道乱敲 通过Monkey程序模拟用户触摸屏幕.滑动T ...
- 伪mac android,Mac,android sdk,monkey压力测试,真机
1.安装Android SDK http://down.tech.sina.com.cn/page/45703.html 新浪本地下载 安装android sdk,将android-sdk-macos ...
- Android Monkey压力测试
一. JAVA环境的搭建 安装jdk-8u151-windows-x64,可以到官网或者应用中心下载. JAVA环境变量的搭建: 在"我的电脑"-"属性"-&q ...
- android monkey压力测试,Android-Monkey 压力测试
1.Monkey 介绍 Monkey是Android中一个对App进行压力测试的命令行工具,可以向系统发送伪随机的用户事件流对正在开发的App进行压力测试(模拟用户操作App).压力测试主要是为了提高 ...
最新文章
- Citus数据分片分布研究(一 在工作节点直接操作表)
- 安装使用Frida在Android上进行hook
- 理解统计信息(3/6):谁创建和管理统计信息?在性能调优中,统计信息的作用。...
- 目前银行利息高还是余额宝利息高?如何选择?
- 7-36 社交网络图中结点的“重要性”计算 (30 分)(思路加详解)兄弟们PTA乙级题目冲起来
- 通过配置文件登陆有密码的mysql不需要输入密码
- Vue + SpringBoot跨域
- 常用Openssl命令
- Spark Streaming之运行原理
- centos6 安装xhprof扩展
- GitHub开源项目之“线程池”
- springboot核心配置文件 application.properties 或者 yml 常用配置详解
- java 云服务器 linux,云服务器Linux部署JavaWeb项目
- Educoder Matplotlib和Seaborn三维图 第2关:曲面三角剖分
- 设计模式-设计原则-迪米特法则
- html 点击 重置 单选,单选按钮上需要的Html 5不会重置(Html 5 required on radio button wil not reset)...
- PS快捷键大全 打开置入 图层操作的快捷键 新建图层 填充上色 前景色背景色等的快捷键
- 区块链开发主流编程语言居然是Go语言!
- 专治不明觉厉:深度解密IBM黑科技量子计算机
- 3 a 5的c语言表达式,C语言中,赋值表达式:(a=3*5)=4*3,为什么整个表达式的值为1,表达式x=(a=3,6*a)和表达式x=a=3,6*a分别是...
热门文章
- 2017年美国计算机科学,2017年U.S.News美国大学研究生计算机科学专业排名TOP10
- 三星T7装Linux系统,Ubuntu已成为三星ARTIK 5/7的主力GNU/Linux系统
- 第15周实践项目-洗牌(范型程序设计)(1)
- java http请求发送unicode_c++ 使用httpclient获取网页及utf8与unicode之间转码
- 面向智能网联汽车边缘网络的分布式端-边协同算法
- 显卡刷bios变砖怎么办--关于矿卡,一些惊呆我的骚操作
- XUPT—ACM周总
- 今日头条18校招第一批算法笔试
- 计算机在社会工作和生活中的应用,计算机综合应用能力实训
- 二叉树的遍历 中序线索二叉树