zoukankan      html  css  js  c++  java
  • 性能测试系列(3):移动端的性能测试

    响应

    1. 冷启动:首次启动app的时间间隔(只是启动时间,不包括页面加载)
    2. 热启动:非首次启动app的时间间隔(只是启动时间,不包括页面加载)
    • 方法:adb shell am start -W packageName或者通过Android Monitor的logcat

    内存

    1. 空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少
    2. 中强度状态:时间偏长的操作应用
    3. 高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏)
    • 方法:adb shell dumpsys meminfo packageName

    Monkey

    1. Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/sdk/sdk/tools/lib/monkey.jar
    2. Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/sdk/sdk/tools/bin/monkey
    3. adb shell monkey {+命令参数} Monkey 测试出现错误后,一般的分析步骤看Monkey的日志 (注意第一个swith以及异常信息等)
    • 程序无响应的问题: 在日志中搜索 “ANR”
    • 崩溃问题:在日志中搜索 “Exception” (如果出现空指针, NullPointerException) 肯定是有bug

    CPU

    1. 在空闲时间(切换至后台)的消耗,基本没大应用使用cpu
    2. 在运行一些应用的情况下,cpu已占50%的情况下,观察应用程序占用cpu的情况
    3. 在高负荷的情况下看CPU的表现(cpu占用应是在80%以上)
    • 方法: top -m -s cpu |grep packageName(-m是最大 -s是排序)或者dumpsys cpuinfo |grep packageName

    FPS

    1. app使用的流畅度,60帧/s,要保持画面流畅不卡顿,一般是要求每一帧的时间不超过1000/60=16.6ms
    • 方法:adb shell dumpsys gfxinfo packageName或者开发者选项—>profile GPU rendering —> on screen as bars(这个基本不用,了解就行了)

    GPU过度渲染

    • 开发者选项—>Debug GPU overdraw—>show overdraw areas

    耗电

    1. 测试手机安装目标APK前后待机功耗无明显差异
    2. 常见使用场景中能够正常进入待机,待机电流在正常范围内
    3. 长时间连续使用应用无异常耗电现象
    • 方法:adb shell dumpsys batterystats |grep packageName

    耗流

    1. 先查看UID:cat /data/system/packages.list | grep com.newsplus.tr 假设UID为1000
    2. 然后 通过cat /proc/uid_stat/1000/tcp_rcv计算下行流量
    3. 再启动APP到APP彻底启动 cat/proc/uid_stat/1000/tcp_sed计算上行流量
    4. 然后sed-rcv即可
    • 或者通过wireshark抓包也可以
    作者:Cstzar

    -------------------------------------------

    个性签名:君子藏器于身,待时而动

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    在网页中实现flash全屏的几种方法
    flashdevelop生成的swf如何支持能打开本地文件
    getPreferredSize()、setPreferredSize()、getSize()、setSize()、revalidate()、pack()
    Flash字体嵌入方法
    NOPI 基本读写
    调整图片的透明度,以及把透明背景改为其他颜色的方法
    查看表空间大小
    浅谈电子商务b2c商城中的用户体验
    使用方法的返回值进行注入
    有关nginx upstream的五种分配方式
  • 原文地址:https://www.cnblogs.com/cstzar07/p/15376174.html
Copyright © 2011-2022 走看看