客户端性能测试工具分析.ppt

上传人:牧羊曲112 文档编号:5961973 上传时间:2023-09-09 格式:PPT 页数:19 大小:605KB
返回 下载 相关 举报
客户端性能测试工具分析.ppt_第1页
第1页 / 共19页
客户端性能测试工具分析.ppt_第2页
第2页 / 共19页
客户端性能测试工具分析.ppt_第3页
第3页 / 共19页
客户端性能测试工具分析.ppt_第4页
第4页 / 共19页
客户端性能测试工具分析.ppt_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《客户端性能测试工具分析.ppt》由会员分享,可在线阅读,更多相关《客户端性能测试工具分析.ppt(19页珍藏版)》请在三一办公上搜索。

1、客户端性能测试工具分析,2013-11-24,培训目的,了解客户端性能测试工具实现原理android端工具开发的一些技巧学会分析问题解决问题的基本方法,客户端性能测试需求分析,目前日常的客户端性能测试有以下种类(可能以后会增加):CPU、内存占用测试 流量消耗测试 电量消耗测试 IO测试,市面上已有工具对比,非定制化,冗余功能太多测试数据难以收集,只能通过手动记录测试结果仍需用户手动提取数据后,再手动绘制成图表,非常麻烦,导致增加大量不必要的工作量,自定义测试工具需求分析,能覆盖目前需要测试的种类傻瓜式操作,能自动记录数据,能自动生成测试结果图表针对可能新增性能测试种类的情况,工具可扩展性要好

2、,监控原理分析,让我们来看各项性能指标的监控原理.,CPU、内存监控原理,CPU、内存监控原理:总CPU信息获取:Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息是放在/proc/stat/文件下,总CPU信息各项分析,user(480826)从系统启动开始累计到当前时刻,处于用户态的运行时间,不包含 nice值为负进程nice(6665)从系统启动开始累计到当前时刻,nice值为负的进程所占用的CPU时间system(236914)从系统启动开始累计到当前时刻,处于核心态的运行时间 idle(7212750)从系统启动开始累计到当前时刻,

3、除IO等待时间以外的其它等待时间 iowait(211630)从系统启动开始累计到当前时刻,IO等待时间irq(39)从系统启动开始累计到当前时刻,硬中断时间softirq(1876)从系统启动开始累计到当前时刻,软中断时间所以总CPU使用计算公式为:总CPU时间:totalCputime=Long.parseLong(toks2)+Long.parseLong(toks3)+Long.parseLong(toks4)+Long.parseLong(toks6)+Long.parseLong(toks5)+Long.parseLong(toks7)+Long.parseLong(toks8)C

4、PU空闲时间:idle=Long.parseLong(toks5),单个程序CPU使用分析,读取/proc/PID/stat文件信息即可获得该PID对应程序的CPU信息,单个程序CPU使用各项分析,PID=15916 程序PIDPackageName=程序包名utime=1026 该任务在用户态运行的时间stime=2687 该任务在核心态运行的时间cutime=0 所有已死线程在用户态运行的时间cstime=0 所有已死在核心态运行的时间单个程序CPU使用率:threadCpuTime=Long.parseLong(tok13)+Long.parseLong(tok14)+Long.pars

5、eLong(tok15)+Long.parseLong(tok16),CPU使用率算法,设定一个时间差,比如5s,取出六个值totalCputime1,totalCputime2,processCpuTime2,processCpuTime1,单个程序的CPU使用率(%)=100*(processCpuTime2-processCpuTime1)/(totalCpuTime2-totalCpuTime1),内存占用监控原理,按照pid调用android的API获取当前被测应用占用的内存。共有四种内存大小:VSS、RSS、PSS、USSVSS-Virtual Set Size 虚拟耗用内存(包含

6、共享库占用的内存)RSS-Resident Set Size 实际使用物理内存(包含共享库占用的内存)PSS-Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)USS-Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)一般来说内存占用大小有如下规律:VSS=RSS=PSS=USS使用Pss返回的消耗内存值和其它相应软件做对比是最接近,电量监控原理,Android中,电量改变会发送BATTERY_CHANGED广播,通过注册广播来监听,即可获取当前电量值,IO监控原理,android本身是linux系统,监控IO可以使用Top

7、命令,通过发送命令,接受返回的字符串来解析IO,即可获取IO百分比,命令如下:top-m 5-n 1,流量监控原理,在Android2.2以上系统,Android系统提供了A.TrafficStats 类,可以提供开发者查看Linux下保存流量数据的文件。使用类TrafficStats的静态方法getUidRxBytes与getUidTxBytes分别可以获取到进程上传和下载的流量。,老版性能测试工具架构图,老版本性能测试工具缺陷,每一项测试都对应一个服务,冗余太多,虽然代码做了大量优化,但是架构上的缺陷导致性能不好每一次测试都新创建线程,导致开销太大可扩展性差,以后若增加测试种类,则需要改动界面,增加服务,增加具体执行线程主界面体验不好,新版本性能测试工具架构,完毕,谢谢各位,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号