转自:https://www.cnblogs.com/nuonuozhou/p/8643735.html

1.android系统自带monkey程序,模拟用户触摸屏幕,滑动track ball,按键等操作莱多设备上的程序进行压力测试,检验程序多久的时间会发生异常
2.adb (android debug bridge)用来连接安卓手机和PC端的桥梁,通过adb服务,在PC端命令行界面面对手机或者模拟器进行全面的操作
用手机来操作的话,要用一个数据线连接,打开usb的开发者模式(USB调试),确认连接成功后在cmd命令行输入命令
3.monkey什么时候用?等而产品稳定了,没有特别多的bug时候,一般用monkey去测试待测试应用的稳定性,健壮性,(是否会发生闪退,崩溃)手机出厂前的整机测试
adb常见命令
adb device 检测连接到电脑的安卓设备,这个是我们后期经常会用到
adb pull <手机全路径><本机路径>从手机中拉取信息放到本地电脑上
adb push<本机文件全路径><手机路径>从本地推动信息到手机上
adb start-server 当adb出现问题或者adb启动不起来的时候,先kill掉进程然后adb kill-sever 然后输入adb start-server
adb shell 登录设备shell(命令行的人机画面)ll ls命令都可以用,进入到linux命令环境,相当于执行远程命令
ctrl+c回到命令行界面
获取当前正在使用的app包名 adb shell dumpsys activity |find "mFocuseActivity"
monkey常用命令
monkey命令格式
adb shell monkey{+命令参数}次数
adb shell monkey -help/-h
-v 用于指定反馈信息级别,(信息级别就是日志的详细程度)总共分为3个程度
-p +包名 用于约束限制,用此参数指定一个或多个包(package,即app名字)
adb shell monkey  -p com.wandoujia.phoenix2 -v -v -v 100
白名单:只运行这个文件里面的包
黑名单:这个文件里的包不运行
如果要运行很多包:
先把很多包名放到一个文件.txt  adb push上传到手机上,然后 adb shell monkey -pkg-whitelist-file +安卓手机文件全路径
-s 用于指定伪随机数生成器的seed值,如果seed值相同,则两次Monkey测试所产生的时间序列也相同,用于问题重现
adb shell monkey -s  1505730657339(seed值) -v -v -v 100
throttle <毫秒>用于指定用户操作(即事件)见的时延,单位是毫秒  操作与操作之间的间隔
adb shell monkey  -p com.wandoujia.phoenix2  -- throttle 3000 -v -v -v 100
randomize-throttle 一定要与throtle绑定出现
在事件之间插入随机延迟,随即延迟范围为0到throttle设置的时间,单位为毫秒 百分比事件
adb shell monkey  -p com.wandoujia.phoenix2  -throttle 3000 --randomize-throttle -v -v -v 100
百分比事件
看订阅号 --pct -touch
adb shell monkey --pct-touch 70 -v -v -v 100 操作100次点击操作占到了70%
monkey小知识
1.查找包名
adb shell 进入shell命令行界面
#cd data/data
#ls
把所有包名都罗列出来根据关键词去查找包名
 
如何查看前台运行的包名和应用名
adb shell dumpsys activity | grep "mFocusedActivity"
通过工具sdk--> hierarchyviewer.bat
 
导出日志到本地
adb shell monkey {+命令参数}次数>PC本地路径
adb shell monkey -v -v -v 1000>d:\monkey.txt
 
app客户端性能测试
测试时间:与功能测试必行
测试范围:产品的核心功能,用户使用最频繁,与用户交互最多
检测方向:
CPU占用
内存的占用
流量的耗用
电量的耗用
测试工具:GT 可以直接安装到手机。http://gt.qq.com
itest
弱网测试
直接设置路由器限速
Network Emulator Toolkit 工具
关注:卡死,崩溃 无响应 闪退 业务交互数据的正确性
 
兼容性测试
手工测试:适应市场主流手机
国内主流云测试平台
testin云测 http://www.testin.cn/
百度云MTC http://mtc.baidu.com
腾讯优测http://utest.qq.com
阿里MQC(http://mqc.aliyun.com/

APP压力稳定性测试的更多相关文章

  1. APP压力稳定性测试之monkey入门

    1.什么是monkey? Monkey是一个命令行工具,使用安卓调试桥(adb)来运行它,模拟用户触摸屏幕.滑动Trackball.按键等随机事件流来对设备上的程序进行压力测试,检测程序多久的时间会发 ...

  2. 安卓手机APP压力monkey测试

    一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...

  3. App压力稳定性测试之Monkey

    一.Monkey简介 Android系统自带monkey程序,模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常. Monkey的使用是在产 ...

  4. APP压力稳定性测试之monkey环境搭建

    一.搭建adb环境: 需要的安装软件包可以使用我分享的,链接:https://pan.baidu.com/s/13DThDtc0GALabTakshcLfg 密码:0kuo:也可以自己百度下载 1)下 ...

  5. monkey稳定性测试的步骤及策略

    1.adb的作用是什么?adb的全称:android debug bridge 安卓调试桥梁,包含在 Android SDK 平台工具软件包中.通过该命令与设备进行通信,以便进行调试adb可以同时管理 ...

  6. Android APP压力测试(一)之Monkey工具介绍

    Android APP压力测试(一) 之Monkey工具介绍 前言 本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动. ...

  7. app测试--稳定性测试

    稳定性测试的概念有2种, 一, 稳定性测试,对应于异常性测试,即发生异常情况时,系统如何反应的测试.包含: 1 交互性测试,被打扰的情况,如来电,短信,低电量等.这些其实在上章的功能测试中有提到. 2 ...

  8. Android App 压力测试 monkeyrunner

    Android App 压力测试 第一部分 背景 1. 为什么要开展压力测试? 2. 什么时候开展压力测试?第二部分 理论 1. 手工测试场景 2. 自动测试创建 3. Monkey工具 4. ADB ...

  9. [Android 测试] 压力稳定性测试之: Monkey 详解分析脚本(转载)

    一.什么是稳定性测试? 通过随机点击屏幕一段时间,看看app会不会奔溃,能不能维持正常运行. 二. Money是什么? Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模 ...

随机推荐

  1. Php header()函数及其常见使用

    语法: Void header(string $string[,bool $replace=true [, int $http_response_code) 向客户端发送原始的HTTP报头 需注意: ...

  2. python开发函数进阶:内置函数

    一,内置函数 #内置的模块#拿过来直接就用的:内置的函数 #!/usr/bin/env python #_*_coding:utf-8_*_ #内置的模块 #拿过来直接就用的:内置的函数 #作用域相关 ...

  3. python学习(一) 基础知识

    开始学习<Python基础教程> 1.2 交互式解释器 按照书上的例子敲了个最简单的print函数,居然报错: >>> print "fsdfs"Sy ...

  4. [机器学习]numpy broadcast shape 机制

    最近在做机器学习的时候,对未知对webshell检测,发现代码提示:ValueError: operands could not be broadcast together with shapes ( ...

  5. 匿名类型与Select方法实现自定义对象插入局部表结构中

    在提取局部表结构数据时,通过Select选取需要的字段,如下句,此时其实产生了一个不用于_menuMan的原新数据类型new { c.SYS_COMMANDS_ID,c.TXT_COMMANDTITL ...

  6. 1.3Broker

    Celery需要一种解决消息的发送和接受的方式,我们把这种用来存储消息的的中间装置叫做message broker, 也可叫做消息中间人. 作为中间人,我们有几种方案可选择: 1.RabbitMQ R ...

  7. js控制使div自动适应居中

    一直都在想怎么样使弹出的DIV能在任何时候都是居中显示的,刚开始的时候是用CSS样式直接定义好层的位置,但是当页面很长的时候,或是浏览器窗口大小不是固定的时候就不能正确的显示,所以只好用JS来控制DI ...

  8. C#递归所以部门展示到TreeView

    C#递归所以部门展示到TreeView 1.首先是数据库表的设计 新建一张部门表:TestUser表 1.ID自增int主键 2.DeptName:nchar(10)3.DeptCode:nchar( ...

  9. Oracle11gR2_ADG管理之恢复主库的truncate表实战

    备库开启flashback database #关闭备库的同步 SQL> alter database recover managed standby database cancel; Data ...

  10. Pascal三角形

    Pascal算法呢,很简单,因为有了推导公式nCr,而当我们刚刚接触一个事物时,面对要解决的问题,归纳分析得到规律,再通过编程,控制流程,对象,语言,方法,属性得到我们想要的结果.如果这次不是PAsc ...