• 性能测试系列(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

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

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

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

  • 相关阅读:
    贪心法(三):POJ题库中的贪心法应用例题
    贪心法(四):HDU题库中的贪心法应用例题
    C语言程序设计100例之(41):快速幂运算
    C语言程序设计100例之(36):四方定理
    C语言程序设计100例之(40):最大公约数问题
    C语言程序设计100例之(38):涂国旗
    相关性搜索简介——常规技术与应用
    Launch X431 HD3卡车诊断适配器评论和反馈
    如何修复更新时卡住的 GODIAG GD801?
    Highend扫描仪比较:Autel vs Snapon vs. Launch vs Bosch
  • 原文地址:https://www.cnblogs.com/cstzar07/p/15376174.html
Copyright © 2020-2023  润新知