APP性能测试

今天在testhome上听到某位厉害的人物讲他们专项测试的性能测试,因为自己也做过性能专项测试但是是客户端PC上的,现在我总结下他提到的一些内容和我自己的一些看法

性能专项我们关注哪些:

1.关注资源消耗(CPU、内存、流量、功耗)

2.启动耗时(冷启、热启),(这个也是很多云测时用到的一个指标)

3.主要页面加载时间

4.内存泄漏、抖动、卡顿、页面渲染(FPS)

今天我也只总结资源消耗这块,先谈谈CPU

1.cpu

cpu检测我们要分3种情况:

1.在空闲时间的消耗,基本没大应用使用cpu

2.在运行一些应用的情况下,cpu已占50%的情况下,观察应用程序占用cpu的情况

3.在高负荷的情况下看CPU的表现,我定义这个高负荷,cpu占用应是在80%以上

1.1 如何查看CPU的使用值

使用命令:adb shell dumpsys cpuinfo apk包名

从上图我们可以看出:6.4%是针对这个CPU的占用率是6.4%,标红的地方5.2%占用率是用户使用的,1.1是内核的占用率,这个数只是针对1核来说,

问题:现在手机都是多核的了,那这样的值也不会太准确,那怎么做?

经验:一般这种取值的,我在测试的时候,会多采集几次,求平均值

上面数据太多了,我们还可以可以用下面这个命令,和top命令,获取单个数据

adb shell dumpsys cpuinfo |grep packagename

2.内存篇

内存的方式和cpu类似,我们通过多次采集,得出内存值,看内存是否异常,那如何获取内存值

怎么取内存,用命令

1.adb shell dumpsys meminfo

2.adb shell meminfo PID

手机运行速度就和内存有很大关系,我记得以前的同事可以研究这个内存,还专门成立了一个小组,可见这个水还是挺深的,而且自己也是知会一点,着重有几个指标需要理解:

vss,虚拟内存 ,每一个应用时一个java虚拟机,系统会分配一个内存,内存每做一个操作,这样是控制内存的大小,但是不会大于最大限制,虚拟内存就就消失掉,我们比较关心

Rss 物理内存(包含共享库的内存),应用实际占用的内存,

pss实际使用的物理内存(比例分配共享占用内存) 如3个进程,那么进程的消耗就应该是除以3,才表示一个

USS 进程中独自占用内存

USS针对某个进程开始有内存泄漏的情况,是一个程序启动了会产生的虚拟内存,一旦这个程序进程杀掉就会释放

这个博主我觉得讲的更好,我只是皮毛而已http://blog.csdn.net/bigconvience/article/details/35553983

n内存要多次测试

使用PID的方式查看:

我们关注的是:Heap size 是实际用到的内存       Heap alloc :是实际分配的值

问题:但是你可以发现alloc<size 为什么会这样,我现在还是不是很还能懂,他们一句话解释是说:进程使用的是虚拟内存,虚拟内存使用远大于物理内存,我现在还不是很懂,

内存我们还可以查看他的单个应用程序最大的内存限制

adb shell getprop |grep heapgrowthlimit

另外一种方式:我们还可以使用procrank工具,就可以查看内存值

3.流量

大神说可以使用adb shell cat/proc/“+PID+”/net/dev 的命令来查看流量数

但是我觉得这样不准确,我获取流量的方式是通过抓包的方式,在一个操作内,看流量中的消耗,可以借助wireshork这个工具来帮忙

大概以上是他提到的内容和自己的理解

总结:

做性能测试的方式有两种:1.竞品分析   2.版本对比  这是现在很多公司使用的一种方式

时间: 2024-10-06 15:50:24

APP性能测试的相关文章

Emmagee app性能测试工具使用教程(转)

Emmagee app性能测试工具使用教程 by:授客 QQ:1033553122 简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控的频率以及性能的实时显示,并最终生成一份性能统计文件. 实现原理 1.监控应用CPU原理 Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息放在/proc/stat

关于APP性能测试脚本录制的四种方法

大家好,近段时间很多人问我关于APP性能测试方面问题.一直是打算发表的,由于多方面的因素拖到现在,有次公司让我给客户讲解APP性能测试,回来后就一直觉得有必要写下.好了,不多废话. 目前版本LoadRunner12有图下4种方式生成脚本. Recording and Analyze Traffic Analyze Traffic Record Emulator Proxy Recording 第一种:Record and Analyze Traffic 在电脑上设置wifi热点,需将网络共享到该

android app性能测试工具GT源码获取以及部署

GT是TMQ(腾讯移动品质中心)研发的一款app性能测试工具.官方地址:http://gt.qq.com/index.htmlgithub地址:https://github.com/Tencent/GT运行工具:eclipse ,我用的专门集成android环境的版本如下图eclipse下载地址:链接: https://pan.baidu.com/s/1csbzl0 密码: 3633 第一步 去github clone代码在cmd命令行中进入到事先创建好的项目存放文件夹下执行 git clone

APP性能测试工具GT的使用总结:app内存测试

APP性能测试工具GT的使用总结:app内存测试 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU.内存.流量.电量.帧率/流畅度等等).开发日志的查看.Crash日志查看.网络数据包的抓取.APP内部参数的调试.真机代码耗时统计等.如果您觉得GT提供的功能还不够满足您的需要,您还可以利用GT提供的基础API自行开发有

app性能测试【通过loadrunner录制】

随着智能手机近年来的快速增长,从游戏娱乐到移动办公的各式各样的手机APP软件渗透到我们的生活中,对于大型的手机APP测试不仅要关注它的功能性.易用性还要关注它的性能,最近发现LoadRunner12可以对手机APP做性能测试,但由于LoadRunner12还没有破解版最多只有50个并发用户,所以我用LoadRunner12录制手机APP的脚本后放到LoadRunner8.0里进行压测,LoadRunner8.0可并发10000个用户. 1.下载CCProxy代理服务器,安装运行该软件用来检测本机

APP性能测试诊断与优化--通过现象猜本质

这段时间忙着帮北京某城商行做移动端性能测试,因移动端IPD.手机等都是无线设备,而且该客户是面临全国各地用户提供移动端APP支持,为了更真实的模拟测试,我跟该项目的项目经理沟通直接在厦门本地通过无线网借用LR工具模拟并发压力测试.很感谢移动架构组的技术专家肖工的帮忙,让我顺利的在本地搭建了模拟机,并跟该项目经理要了生产环境的APK工程包部署后,并根据项目组提供的业务操作手册学习业务知识,后使用LR开发脚本进行压力测试.       因地域距离关系,而且是直接在生产环境压力测试,生产环境在北京,压

移动APP性能测试指标

性能测试在应用质量保证中起着重要的作用,概括为三个方面:应用在客户端性能的测试.应用在网络上性能的测试和应用在服务器端性能的测试.通常情况下,三方面有效.合理的结合,可以达到对系统性能全面的分析和瓶颈的预测. 通过性能测试工具得到测试对象的各项性能指标,将各项性能指标与行业中的标准值或者竞品值去做对比,以得到一个综合的结论与优化改进的方案.下面将以手游这样的典型APP为例对客户端性能指标进行详细说明. 包体 包体大小能被列为性能指标,是从APP性能指标及游戏运营两个维度考虑的,玩家是更希望包体小

常见的APP性能测试指标

性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样.中国软件评测中心将性能测试概括为三个方面:应用在客户端性能的测试.应用在网络上性能的测试和应用在服务器端性能的测试.通常情况下,三方面有效.合理的结合,可以达到对系统性能全面的分析和瓶颈的预测.通过性能测试工具得到测试对象的各项性能指标,将各项性能指标与行业中的标准值或者竞品值去做对比,以得到一个综合的结论与优化改进的方案.下面将以手游这样的典型APP为例对客户端性能指标进行详细说明. 包体大小 包体大小能被列为性能指标,是从A

【转】Android APP性能测试

性能测试是通过自动化的测试工具模拟多种正常.峰值以及异常负载条件来对系统的各项性能指标进行测试.而app的性能也越来越被关注,下面我们就介绍一下app的性能测试方法.但是性能测试是参考值,不管什么测试方法都不可能精确地测试出被测试对象的真实性能指标,这一点要事先明确.一.内存泄露Android内存抓取步骤准备:电脑需安装android adb 并将adb的目录加入到系统环境变量中,通过电脑命令窗口来查看内存变化状况,并记录内存数值步骤:a.adb devices -l 查看手机设备是否连接上,如

Android App性能测试

1.性能测试 启动时间,主要测试App在启动过程中的耗时情况 CPU, 主要测试App在使用过程中的CPU占比率 流量,主要测试App在使用过程中对流量的消耗情况 电量,主要测试App在使用过程中对电量的消耗情况 内存,主要测试 App在使用过程中对内存的消耗,验证使用过程中无内存泄露的情况 FPS(每秒的帧数),衡量流畅度,通过观察,可以发现流畅度异常的情况. 过度渲染,影响流畅度的一个方面就是过度渲染,通过过度渲染的测试,可以发现一些异常的情况 . 2.性能测试环境准备 Android SD