
Android性能测试专项及原理
文章平均质量分 65
Cloud_Huan
这个作者很懒,什么都没留下…
展开
-
Android性能测试之概述(一)
我们知道,当一个软件功能测试进行得比较稳定的时候,将会进行软件的调优,给用户的第一印象是功能,但是能不能留住用户,就是性能了。本篇将会讨论关于Android中几个最重要的性能指标,将对性能这个玩意有一个整体的认知,之后的篇幅将会对这几个指标的原理以及测试方法做一个全面的讲解。指标:时延(流畅度) 内存 CPU 流量 功耗 5大块时延: 时延指的是时间延迟了,我原创 2015-11-18 19:39:36 · 1237 阅读 · 0 评论 -
Android性能专项测试测试点指导(三)--IT之家性能分析报告实战
前两篇文章我们只是非常理论提供了性能方面的测试点 Android性能专项测试测试点指导(一) Android性能专项测试测试点指导(二) 在了解了相关理论之后我们这篇进入实战,这次选择的应用是个人比较常用的IT之家android端 PS:由于是第三方应用,所以不可能从代码方式分析,也无法得知具体逻辑,所以测试点只会涵盖看得到的地方,本次覆盖的模块为了省事只测试了资讯模块测试版本:2.48原创 2016-05-28 17:57:01 · 1431 阅读 · 3 评论 -
android内存性能数据获取--api篇
是这样的,卤煮最近刚写一个性能自动化监控工具,其中针对播放器那块需要监控内存和cpu,选用的框架是instrumentation框架,所以只能用api方式啦。当然,获取内存数据其实有很多方式,包括 - adb shell dumpsys meminfo [pkg] - cat /proc/meminfo - android monitor图形界面 - 然后就是我们今天要学习的原创 2016-08-10 21:14:39 · 5907 阅读 · 2 评论 -
获取当前进程Cpu使用率并自动导出到图表py脚本
工作中要用到,重新写了一个,好处是运行后会每隔自定义的秒数获取自定义个数据量,然后直接一个折线图,简单粗暴,做性能直接粘贴上去就完事了,避免了上次做性能测试的时候直接粘贴android monitor的cpu数据,然后被领导嫌弃说你y的是肉眼看数值啊的尴尬(汗一个…)每隔xx秒获取一次数据直接在py的末尾语句。#直接在入口函数的CpuGet方法设置,前一个为共获取N个数据,后一个代表延迟,当然也可原创 2016-09-06 20:15:21 · 2176 阅读 · 0 评论 -
LeakCanary核心原理源码浅析
网上大牛太多,不敢说分析,也不敢装成大大,所以只能是浅析… 那么今天这篇主要解决什么问题呢?其实就一个问题,LeakCanay.install(this)这个函数到底是怎么走的,用测试的话说就是数据流是怎么走的,用探索性测试的方法说就是:快递法。LeakCanay项目的地址是:https://github.com/square/leakcanary那么经过半天的下载之后,成功导入到as中。直原创 2016-11-08 13:00:46 · 15021 阅读 · 3 评论 -
Android官方6季性能调优典范的导图和分类总结导图
这是6季的思维导图 这是抽取的并分类过的 只是随性写的 没有校对过 作为学习的一个成果展示,可以发现很多文章总结的都不够全 这个够全了原创 2016-11-11 17:39:24 · 662 阅读 · 0 评论 -
android性能测试封装工具----ctrace4android,附性能测试的3个例子
在python3上重新封装了一个android用来性能测试获取指标的工具,以前写的比较杂乱,我自己都不想用 汗… 所以现在重新封装一个,相当于重写,也结合这一年来做性能加了一些新特性 :) 姑且是终结版了?主页https://github.com/CloudHuan/ctrace4android运行环境:Python3 + window10支持机型:小米、aosp系统(华为还在调,不同厂商获取数原创 2017-08-08 19:00:16 · 1912 阅读 · 0 评论 -
专项测试案例--上传成功率对比专项测试
前言 今天分享一个专项测试的一个解决案例,是项目上一阵子重构后某逻辑模块的一次专项对比测试,最近终于有了时间,赶紧写下来。 然后,吐槽一下结果,对的,逻辑维持原样,无法推动任何人去做逻辑优化的事,也就是本篇提出的改进建议没有采纳。虽然创业公司不重视质量和测试,但是我还是坚持做下去。(气愤x3)目录分享上传专项测试 一 明确客户反馈的问题—-分享总是失败 二 结合竞品分析成功率低的原因原创 2017-11-06 13:07:02 · 1044 阅读 · 0 评论 -
一个面试题----android端流畅度除了滑动的时候统计fps外,静止的情况怎么统计?
最近面试的时候问到了一个小题目,关于android端流畅度的测量方法。我的回答是通过获取gfxinfo信息,然后计算一个单位时间内绘制的帧数,从而计算出fps的值。同时为了衡量稳定性,我通过对比测试方差的方式,衡量滑动的流畅度稳定性,最后,基于adb做成自动滑动、获取数据的脚本。但是面试官又问了另外一个问题—-关于静置的画面怎么衡量呢?如果用的是旧方法,那么静止的画面fps应该会变成0,那样岂原创 2018-01-08 18:24:05 · 1369 阅读 · 0 评论 -
App性能测试前需要了解的内存原理
这两天在研究性能中内存方面的一块,网上也零散看了挺多文章,写得很细但是感觉不够整体,所以这篇算是总结一下吧,当个复习资料。 那么这里个人分为两个大部分,第一部分应用内的内存管理,主要是oom的理解,GC机制和内存泄露这三个小部分;另一部分是系统级别的内存管理,包括内存共享,进程创建到LMK也就是消亡的一个简要了解,具体到某个细节,网上挺多的,就不细说了,后续看心情再补写⑧!应用内的内存管理一原创 2016-04-13 19:49:41 · 3867 阅读 · 1 评论 -
Android性能专项测试测试点指导(二)
Android性能专项测试测试点指导(一) 上一篇文章通过导图的方式介绍了性能专项的几个测试点,那么今天将会详细阐述下。内存:内存泄漏: 老生常谈的最多就是这货,这家伙的测试方法其实是最简单也是最难的,为什么简单,因为你要定位到路径,只需要重复操作即可,比如你怀疑播放器泄漏了,重复进入退出N次,那么就可以确定是播放器出问题了,可以提单了;说难,你需要进一步分析到底是哪里泄漏了,通过MAT工具原创 2016-05-08 20:05:05 · 2594 阅读 · 0 评论 -
android性能专项测试流程和学习计划
前阵子一直在研究性能测试,但是困难挺大的,公司也主要是功能测试为主,也没有大神带带我这个小白…于是自己一个人滚滚爬爬一直停在指标啊,工具的学习上面,网上的文章也都是介绍某个性能工具的使用,就没有一个介绍测试人员该怎么去做专项测试,流程是什么,然后突然灵感一发,就有了这篇文章个人理解的居多,有不对的尽管喷吧,我一定改 后续会逐渐丰满这个流程的,加油吧!来个图图: 业务场景的确立,用例的原创 2016-03-23 16:26:37 · 1642 阅读 · 0 评论 -
Android性能之内存基础篇(二)
上一篇我们大概认识了安卓查看内存的一般方法,并对安卓内存有了一个简单的认识,这一篇我们将会对安卓内部关于内存的相关基础知识做一个总结概要:1.native内存和heap内存2.安卓为什么会oom3.low memory kill机制了解4.学会查看ram内存以及进程内存(命令及解析)5.开发中可以避免的问题点1.native内存和heap内存那么an原创 2015-11-20 19:42:54 · 6385 阅读 · 0 评论 -
Android性能测试之内存泄露以及GC机制浅析(三)
Android 内存泄露以及GC机制浅析今天来说说android当中的GC机制(garbage collector)原创 2015-11-27 16:20:09 · 1946 阅读 · 0 评论 -
也来谈谈Android内存的强软弱虚引用
下面来谈谈java里面的几个引用首先要明确为什么要出现几个不同的引用,这是因为为了更好得管理分配java内存,避免内存出现OOM,更好地让JVM虚拟机回收资源,为分配的对象指定不同的引用类型,可以人为地控制对象的生命周期。强引用类型:也就是最原始的,比如new一个对象出来就是一个强引用了,强引用在GC的时候如果有关联是不会被回收哒,如果app内都是没有被释放的对象还要越创建原创 2016-02-17 18:46:44 · 1854 阅读 · 0 评论 -
关于adb不支持直接GC的另类解决办法
需要做性能专项,期望可以通过adb命令完成重复界面操作后GC以及获取内存信息,难点在于如果通过adb回收对象,找遍了资料发现没有直接的办法,于是想到了一个另类的办法。 原理是这样的,在应用的源码任意位置新建一个activity,然后在onCreate方法中执行System.gc(),后执行finish()。最后只需要通过adb am命令启动这个activity就行了。原创 2016-03-26 13:34:22 · 3751 阅读 · 0 评论 -
自己用python写的性能专项小脚本原理和使用
我是github链接下面放图: 主界面 内存直接打印以及csv的数据记录(图表是csv画的,如果直接输出图形可以用pychartdir) 流量的打印纸以及输出文件 流畅度用的是gfxinfo,提取出里面的绘制时间,并计算,要求是小于16ms,看得出我们这个项目是完全达不到的,不过已经在重构这个层级很多的界面了 好了,原创 2016-03-30 18:22:22 · 2890 阅读 · 0 评论 -
内存泄漏检测利器--leakcanary实例试玩
以前,我们测试内存泄漏是这样的: 1.打开android studio的内存监控,重复进入退出模块然后看内存 2.利用mat的插件去比较分析 现在: 1.利用leakcanary工具直接注入,然后默默等待…这个开源工具的地址:https://github.com/square/leakcanary好了,接下来开始试玩了,leakcanary的使用非常简单,在build.gr原创 2016-05-15 11:29:22 · 2196 阅读 · 0 评论 -
Android性能专项测试测试点指导(一)
其实研究性能专项也有一段时间了,是时候该总结一下了,今天先放出个导图目录,详情之后在开篇详细补充,所以标题有个(一),@.@原创 2016-05-04 21:46:18 · 1630 阅读 · 0 评论 -
App性能测试前需要了解的流畅度原理
这块内容网上挺多,所以为了不冲突,改成用小白文描述,是个人都要能看懂的文字,最后总结成一幅图加深理解。内核帧缓冲区做的–显示刷新机制首先,4.1以前,是双缓冲机制+VSync,之后便是三缓冲机制,那么什么是双缓冲机制,什么是三缓冲机制,网上一堆说明的,这里不说什么生涩难懂的技术语言,只用自然语言,废话不说,先上图(来自网络收集) 这幅图要说明的是引入了VSync时间,这玩意相当于中断,意思是原创 2016-04-23 11:04:32 · 3372 阅读 · 0 评论 -
2017总结----迷茫、痛苦和关于测试职业规划的一点光亮
今年这个迟来的总结,说实话,2017,很迷茫,然后过的非常不如意 倒不是上一年的职业目标没达到,而是接下来的路根本不知道如何走。在没解决这个问题之前,或者说没搞清楚自己的方向之前,是迟迟不能落笔的,啊不,应该是落键盘。下班后花了几天的时间研究了下测试的职业生涯规划,在许许多多的文章之中穿梭,结合前阵子和某公司t3级的大大面试,对自己接下来的几年职业规划,总算有了眉目,让恍惚的心总算原创 2018-01-29 18:25:21 · 2061 阅读 · 6 评论