APP性能测试工具GT的使用总结:app内存测试 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU.内存.流量.电量.帧率/流畅度等等).开发日志的查看.Crash日志查看.网络数据包的抓取.APP内部参数的调试.真机代码耗时统计等.如果您觉得GT提供的功能还不够满足您的需要,您还可以利用GT提供的基础API自行开发有…
前言最近高德地图APP完成了一次启动优化专项,超预期将双端启动的耗时都降低了65%以上,iOS在iPhone7上速度达到了400毫秒以内.就像产品们用后说的,快到不习惯.算一下每天为用户省下的时间,还是蛮有成就感的,本文做个小结. (文中配图均为多才多艺的技术哥哥手绘) 启动阶段性能多维度分析 要优化,首先要做到的是对启动阶段的各个性能纬度做分析,包括主线程耗时.CPU.内存.I/O.网络.这样才能更加全面的掌握启动阶段的开销,找出不合理的方法调用. 启动越快,更多的方法调用就应该做成按需执行,…
前言 之前我们说了启动优化的一些常用方法,但是有的小伙伴就很不屑了: "这些方法很久之前就知道了,不知道说点新东西?比如App Startup?能对启动优化有帮助吗?" ok,既然你诚心诚意的发问了,那我就大发慈悲的告诉你:俺也不知道. 走吧,一起瞅瞅这个App Startup吧,是不是真的能给我们的启动带来优化呢? (想看结果的可以直接跳到最后的实践和总结阶段) Contentprovider中初始化 想必大家都了解,很多三方库都需要在Application中进行初始化,并顺便获取到…
一般首次启动一个手机App时都会有系统权限弹框,如下图所示: 权限弹窗上面的按钮都是固定的,只需要定位到“ALLOW”按钮,点击就可以了,代码如下: 这里主要用selenium里面的显示等待模块(WebDriverWait)和判断模块(expected_conditions)来定位,所有需要导入相应模块~…
前言 app启动耗时过长的话,无论你的app里面的内容多么丰富有趣,作为一个用户,首先是没有耐心去等待的,如果我是一个用户,我会这样想:这是什么垃圾公司出的什么烂app,再等2s不进来就卸载,黑人问号???还真是垃圾,还没出来;于是乎,长按拖拽卸载,一套带走... 从个人层面讲,是对研发人员能力的否定;从公司层面讲,就是对该公司的否定;诸如,这家公司出的app很垃圾,同类产品也不会优先选择.由此可见,app启动耗时首先决定着它的第一体验,快不快,流不流畅都是之后才看得到的;而对于app启动耗时的…
冷启动 冷启动就是App被kill掉以后一切从头开始启动的过程. 热启动 当用户按下home键的时候,iOS的App并不会马上被kill掉,还会继续存活若干时间.理想情况下,用户点击App的图标再次回来的时候,App几乎不需要做什么,就可以还原到退出前的状态,继续为用户服务.这种持续存活的情况下启动App,称为热启动. 冷启动比热启动重要 苹果提供的测量启动耗时方法 在Xcode的菜单中选择Project→Scheme→Edit Scheme,然后找到 Run → Environment Var…
简介 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的Android性能监测小工具,主要用于监控单个App的CPU,内存,流量,启动耗时,电量,电流等性能状态的变化,且用户可自定义配置监控的频率以及性能的实时显示,并最终生成一份性能统计文件. 实现原理 1.监控应用CPU原理 Android系统是基于Linux内核的,所以系统文件的结构和Linux下一样,系统总体CPU使用信息放在/proc/stat文件下,/proc/cpuinfo文件存放CPU的其它信息,包括CPU名称,直接读取…
1.性能测试的几个指标:       2.性能测试环境准备: 3.启动时间 3.1,监控值的获取方法 启动分为冷启动和热启动,冷启动:应用程序首次启动,进程首次创建并加载资源的过程:热启动:应用程序启动后点"back"键."Home"键,应用程序退到后台,并未被完全"杀死"的状态,再次启动: 3.1.1,冷启动 启动App命令:adb shell am start -W -n package/activity       停止App命令:adb…
1.性能测试 启动时间,主要测试App在启动过程中的耗时情况 CPU, 主要测试App在使用过程中的CPU占比率 流量,主要测试App在使用过程中对流量的消耗情况 电量,主要测试App在使用过程中对电量的消耗情况 内存,主要测试 App在使用过程中对内存的消耗,验证使用过程中无内存泄露的情况 FPS(每秒的帧数),衡量流畅度,通过观察,可以发现流畅度异常的情况. 过度渲染,影响流畅度的一个方面就是过度渲染,通过过度渲染的测试,可以发现一些异常的情况 . 2.性能测试环境准备 Android SD…
Android APP性能测试笔记(一) (1)工具使用   Android Studio  GT, root的真机 (2)记录apk大小(对比竞品)   使用Android Studio导入需要测试的apk 导入后,页面显示apk的大小 如果希望可以优化前后apk进行对比 (3)启动时间   冷启动:无数据的首次启动: 热启动:非首次启动情况,无初始化欢迎界面和首次初始化过程: 1)冷启动的测试方法: 通过adb命令行启动应用获取:adb shell am start -W 包名/Activi…