大话APP测试2.0笔记——内存测试

  1. 查看内存数据之前,要知道你测试的那台手机对于每个应用分配的最高内存值到底是多少。查看下面路径的文件的内存来获取手机给予每个应用分配的最高内部值。

    /system/build.prop

    其中对于堆分配的大小是dalvik.vm.heapgrowthlimit,这个数值代表着当你的应用超过这个内存值的时候,在该Android手机内会强制终止这个应用的进程。

  2. adb shell procrank

    可以得到PID(进行ID号)、Vss(占用的虚拟内存)、Rss(占用的物理内存)、Pss(占用的私有内存加上平均分配的共享内存)、Uss(私有内存)

    主要看Uss,如果超过应用被分配的最大内存值,那么就会出现应用的闪退。如果获取不到Uss,那就看Pss。

  3. adb shell dumpsys meminfo <package name>
  4. 我们获取数据的目的 主要看我们应用的内存是否是一个一味上涨的趋势。 正常情况下,每个界面的跳转或者场景的切换,内存值都会被被动或主动地做回收,但如果有泄露就会出现一段持续性地上涨,虽然也许最后还是会被部分地回收。
  5. Memory Monitor查看内存风险

    1)实时查看APP的内部分配情况

    2)快速判断APP是否由于GC(垃圾回收)操作造成卡顿

    3)快速判断APP是否因为超出内存而产生崩溃

  6. 当一个内存短时间内发生掉落,我们可以认为发生了GC操作。
  7. Memory Monitor可以帮助我们发现的问题:

    1)发现内存抖动的场景

    2)发现大内存对象分配的场景

    3)发现内部不断增长的场景

    4)确定卡顿问题是否因为执行了GC操作

  8. MAT分析内存泄露

    MAT是一个JAVA Heaper分析器,可以用来分析内存泄露和减少内部才能消耗。分析Process showmap中的/dev/ashmem/dalvik-heap(deleted)一项所占用的Memory。

    Android Studio和MAT组合,可以缩小内存问题的范围以及最终定位具体所在的代码。

时间: 2024-10-10 10:43:36

大话APP测试2.0笔记——内存测试的相关文章

大话APP测试2.0笔记——耗电量测试

通过测试一些特殊的模块或功能是否有bug,来间接地反映耗电量的情况. 比如,用户通过任何场景进行支付,此时在弱网下(上行:100Kbps,下行:100Kbps,dns delay和网络delay都在100ms),那么当钱包跳转到声波支付界面的时候,从功能和业务上并没有任何的异常,但背后的逻辑却出现了问题--此时无论用户是退出支付的view还是退出钱包,其声波轮询的RPC会一直请求,直到2分钟超时. 2分钟的轮询,会消耗很多电量和用户流量. 在项目初期,做测试分析的时候去评估本次专项中风险比较高的

大话App测试2.0笔记

持续集成->持续发布->DevOps Testin 软件的移动化,要求软件具备跨终端.跨网络.跨地区.个性化.更新升级速度快等特性,给软件测试带来了更大难度.更多复杂性和更高的成本. 移动APP测试的总体状况.APP测试的工具.专项测试 UI自动化框架 接口.单元.专项.安全.大数据 Appium 是 WebDriver的继承者和开拓者

大话App测试2.0笔记2

耗电测试 分为两种: 1)直接测试一段时间内的耗电的一个具体的值 2)间接测试和耗电相关的数据或场景,从而通过测试和优化,同样能够达到减少耗电量的效果 使用dumpsys命令来查看应用的WakeLock机制以及所拥有的服务运行状态. adb -s <device number> shell dumpsys batteryinfo <package name> 通过过滤自己应用对应的包名,可以看到如下的一些数据. Network :200kb received, 300kb sent

大话APP测试2.0笔记——抓包查看响应时间

想要抓取https的包的话,需要两个SSL对应的证书,一个是抓包工具本身通用的SSL的证书,每个抓包工具都有自己对应的SSL证书. Charles的SSL证书:http://www.charlesproxy.com/getssl 还有一个企业SSL证书,这个证书需要我们自己在内网链接企业的https URL可以获取. (1)下载一个firefox浏览器,设置firefox挂上Charles或者其他代理工具.使用firefox访问https的网站可以看到如下图所示界面. (2)单击"添加例外&qu

推荐——Monkey《大话 app 测试——Android、iOS 应用测试指南》

<大话移动——Android与iOS应用测试指南> 京东可以预购啦!http://item.jd.com/11495028.html 当当网:http://product.dangdang.com/23510301.html#catalog 大家速度预购哈--- 这本书离不开大家的支持.其中感谢给我写书评的几位大牛.@熊力_LiXiong @阿里窥基 @徐毅-Kaveri @左耳朵耗子 .明天京东的链接也出来啦-- 推荐--Monkey<大话 app 测试--Android.iOS 应用

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

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

RMAN 0级恢复测试---RAC+ASM恢复到单机

最近做了一次RMAN 0 级恢复测试,测试模拟了生产数据库发生灾难性故障,只剩下rman全备份的备份片,利用备份的spfile.控制文件.数据文件.归档日志恢复数据的过程. 首先说一下环境,网上很多文章都是互相粘贴,并不一定适用于你的测试环境.我这次测试的生产环境是2个节点的RAC,存储使用了ASM去管理,操作系统为RHEL6.4,Oracle11.2.0.4,rman每日全备份,使用全备份去恢复数据.恢复的机器选择了1台PC机,安装RHEL6.4,操作系统.Oracle版本均和服务器一致,区别

测试servlet学习笔记

操作方法: 1.新建工程: File-->new-->Java Project-->TestServlet(工程名称)-->Finish. 2.加载servlet-api.jar类包: TestServlet(右键)-->Build Path-->Configure Build Path-->Library -->Add External JAR Selection-->(浏览在tomcat的lib目录下找到servlet-api.jar选中后点击打开

iSensor APP 之 摄像头调试 MT9D001 MT9P031 测试小结 200万像素和500万像素摄像头

iSensor APP 之 摄像头调试  MT9D001 MT9P031 测试小结 iSensor app 非常适合调试各种摄像头,已测试通过的sensor有: l  OV7670.OV7725.OV9650.OV9655.OV9653.OV5642.OV5640.OV5620 l  MT9T001.MT9M001.MT9P031.MT9V032.MT9V034.MT9D001.MT9D112.MT9D111 等 今天又重新测试了下MT9D001C12STC,MT9P031C12STC特此留下文