APP压力稳定性测试

时间:2022-02-24 23:10:23

转自: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常见命令APP压力稳定性测试
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压力测试&lpar;一&rpar;之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. &lbrack;Android 测试&rsqb; 压力稳定性测试之&colon; Monkey 详解分析脚本&lpar;转载&rpar;

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

随机推荐

  1. Java名字的由来

    Java语言的历程丰富多彩,被现在众多程序员和企业广泛使用,不用质疑这是Java的领先技术的结果. Java是Sun公司开发的一种编程语言,Sun公司最初的方向是让Java来开发一些电器装置程序,如: ...

  2. iOS 图片大小压缩 图片尺寸处理

    图片的压缩其实是俩概念,1.是 “压” 文件体积变小,但是像素数不变,长宽尺寸不变,那么质量可能下降,2.是 “缩” 文件的尺寸变小,也就是像素数减少.长宽尺寸变小,文件体积同样会减小. 这个 UII ...

  3. 远程无法连接Mysql 的解决方案

    问题描述: 新安装了MySQL 5.6,使用root用户无法远程连接, 提示Host 'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL ...

  4. Centos 6&period;4 python 2&period;6 升级到 2&period;7

    Centos 6.4 python 2.6 升级到 2.7 分类: Python Linux2013-09-13 21:35 37278人阅读 评论(2) 收藏 举报 一开始有这个需求,是因为用 Ya ...

  5. 必须会的SQL语句(五)NULL数据处理和类型转换

    1.Null数据的处理     1)检索出null值               select * from 表 where xx is null        2)null值替换      sele ...

  6. memcached学习——常用命令&plus;基于java客户端的3种简单实现(二)

    常用命令: memcached设计的原则就是简单,所以支持的命令也不是特别多~ 1.查看memcached的状态,主要用于分析内存的使用状况.优化内存分配等 stats 查看memcached的运行状 ...

  7. 【常用指令】git&plus;服务器&plus;数据库

    git日程操作 服务器常用操作 ①同步master git pull origin master ②创建分支 git checkout -b 分支名 ③常规操作 git diff git add 文件 ...

  8. C&num; 连蒙带骗不知所以然的搞定USB下位机读写

    公司用了一台发卡机,usb接口,半双工,给了个dll,不支持线程操作,使得UI线程老卡. 懊恼了,想自己直接通过usb读写,各种百度,然后是无数的坑,最终搞定. 现将各种坑和我自己的某些猜想记录一下, ...

  9. Template模板

     目标 模板介绍 模板变量 常用标签 常用过滤器 自定义过滤器 模板结构 加载静态文件 一 模板介绍 在之前的章节中,视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带 ...

  10. ORM框架&lpar;ITDOS实战源码&rpar;

    ORM提供了实现持久化层的另一种模式,它采用映射元数据来描述对象关系的映射,使得ORM中间件能在任何一个应用的业务逻辑层和数据库层之间充当桥梁. 如以下示例: public int GetSystem ...