zoukankan      html  css  js  c++  java
  • android流畅度测试

    背景:流畅度测试一般很少用到,主要是测试应用在进行一个页面操作时候的界面绘制有无卡顿,测试方式有2种。
    方式一:
    1、找到你手机设备的开发者模式,下滑找到监控–GPU呈现模式分析,选择在屏幕上显示为条形图
    在这里插入图片描述
    2、上一步完成之后,界面上面会出现一个如下图的柱形图。此时可以测试执行被测应用的case。观察图线
    ps:图线下有一道绿线,绿线为一道标准线,也就是GPU一帧绘制的时间,16ms,如果超过了这个绿线,则认为可能会出现卡顿,可以根据实际情况分析,如卡顿无法接受,可以选择优化
    在这里插入图片描述
    方式二:
    1、找到你手机设备的开发者模式,下滑找到监控–GPU呈现模式分析,选择在adb shell dumpsys gfxinfo中,选择完毕之后没有任何变化,此时可以选择操作你的应用,执行case,执行完毕之后。进入下一步

    2、使用adb获取数据,分析数据内容,把刚才执行的图形数据保存下来,分析数据信息

    $>adb shell dumpsys gfxinfo package > gfxinfo.txt
    备注:package为包名,获取方式为:
    --前台只运行被测app,输入命令,可以得到包名
    $>adb shell dumpsys window w |grep / |grep name
    

    3、保存下来之后,打开gfxinfo,也就是保存之后的那个文件,筛选找到profile data in ms,下面的数据,即为需要的数据,可以复制下来,导入到Excel中,做成图表,做出来的图表与方式一的其实为一个图表
    在这里插入图片描述
    备注:
    Draw:
    Draw 是在Java中创建显示列表所需要的时间。这个值显示了运行绘图函数用了多长时间,比如View.onDraw(Canvas)。
    Process:
    Process 是Android 2D引擎渲染显示列表所需要的时间。在界面中View数目越多,则有越多的绘制命令需要执行。
    Execute:
    Execute 是把一帧数据送到屏幕上排版显示的时间,这个时间通常比较小。

    方法2是方法1的手动版

    ---疲惫的我,只想在街上找辆法拉利或者兰博基尼去试试头够不够铁
  • 相关阅读:
    简简单单的 JavaScript简写技巧
    常用的前端小知识
    nuxt项目部署对静态页重编译问题
    docker 容器部署nuxt项目
    mysql数据库损坏修复问题
    storm supervisor和nimbus启动自动消失的问题
    MATLAB基础知识
    音视频入门-20-BMP、PNG、JPG、GIF静态图生成GIF动态图
    处理树状结构数据以及 React渲染
    React Hooks 获取最新数据问题
  • 原文地址:https://www.cnblogs.com/dflblog/p/11357545.html
Copyright © 2011-2022 走看看