1.眷注资源斲丧(CPU、内存、流量、功耗)
2.启动耗时(冷启、热启),(这个也是很多云测时用到的一个目标)
3.主要页面加载时间
4.内存泄漏、发抖、卡顿、页面渲染(FPS)
今天我也只总结资源斲丧这块,先谈谈CPU
广泛的apk功能测试,主要是以下七类
1、呼应
2、内存
3、cpu
4、FPS (app使用的流利度)
5、GPU过分渲染
6、耗电
7、耗流
(app除了这些功能测试,另有:手机版本号兼容性,屏幕区分率兼容性,安定性测试,宁静测试等,后续会持续更新… 流量测试同这些一同更新,这里就不再分析白 )
软件的呼应时间和呼应速率直接影响到用户的体验度,假如一个软件,迟迟加载不出来,会直接影响到软件的日活、留存。因此关于一个软件,对呼应速率测试是必不成少的。
主要测试点:
1、冷启动:初次启动app的时间距离(只是启动时间,不包含页面加载)
2、热启动:非初次启动app的时间距离(只是启动时间,不包含页面加载)
3、完全启动:从启动到首页完全加载出来的时间距离
4、有网启动:从倡导跳转,到页面完全加载出来的时间距离
5、无网启动:从倡导跳转,到页面完全加载出来的时间距离
(在项目中,主要测试眷注点是冷启动,热启动)
测试办法:
1、使用adb下令
1) 冷启动
adb shell am start -W packageName/ActivityName(相对途径,首个Activity)
涵义:
ThisTime: 该Activity的启动耗时;
TotalTime: 使用本身启动耗时, ThisTime+使用application等资源启动时间;
WaitTime: 体系启动使用耗时, TotalTime+体系资源启动时间
2)热启动:按back按键后再启动adb下令
测试标准:冷启动时间不凌驾1.5s, 热启动不凌驾1s.
3)完全启动,无网启动,有网启动都可以经过charles抓包来获取启动的时间
charles是一个很强壮的抓包东西,除了截取哀求还能举行单接口压测,修正哀求参数并发射哀求,以及模仿无网,弱网,2G,3G,4G等。能处理app的很多专项测试。
限定网络情况必要用到charles的一个功效: Throttle Setting
经过设置网速和抓包,可以获取启动时间,但是有一定的偏差。在项目中,寻常只必要测试冷启动,热启动便可。
2、使用AndroidStudio的Android Monitor,查察手机日志体系输入
Android Monitor统共有5大模块:logcat, memory, cpu, network,GPU
我们可以经过logcat获取使用的呼应时间(怎样使用,内存中有先容)
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
内存的办法和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东西,就可以查察内存值
大神说可以使用adb shell cat/proc/“+PID+”/net/dev 的下令来查察流量数
但是我以为如此禁绝确,我获取流量的办法是经过抓包的办法,在一个利用内,看流量中的斲丧,可以借助wireshork这个东西来帮助
约莫以上是他提到的内容和本人的了解
总结:
做功能测试的办法有两种:1.竞品分析 2.版本比力 这是如今很多公司使用的一种办法
在说一句:腾讯的GT照旧很好用的,网上可以下载,可以试试
原文链接:
https://blog.csdn.net/testManger/article/details/116991049
版权声明:本文来自互联网整理发布,如有侵权,联系删除
原文链接:https://www.yigezhs.comhttps://www.yigezhs.com/qingganjiaoliu/54077.html