• 移动测试基础 移动端性能测试方法总结


    查看CPU占用率
    1、使用命令adb shell top -m 10 -s cpu(-t 显示进程名称,-s 按指定行排序,-n 在退出前刷新几次,-d 刷新间隔,-m 显示最大数量)

    2、通过proc获取CPU信息。
    adb shell cat /proc/stat | grep cpu > totalcpu0

    3、Android Studio自带CPU检测功能

    耗电测试:

    1、PowerStat

    2、电量的测试方法(adb shell dumpsys batterystats)
    1)首先要初始化batterystats数据
    adb shell dumpsys batterystats --reset
    2)上面的操作执行完毕后,拔掉手机,操作你的App,操作完成后,重新连接手机,执行下面的命令,收集Battery数据:
    adb shell dumpsys batterystats > batterystats.txt

    3、PowerTutor

    流畅度测试:

    1、Android Studio自带GPU测试功能
    2、FPS Meter
    3、系统自带功能,GPU呈现模式分析

    流量测试:
    1、Android Studio自带流量检测功能
    2、tcpdump+Wireshark抓包测试法
    在App运行期间,把手机收发的所有报文度抓取下来,再计算收发报文总大小,即App消耗的流量。

    内存测试:
    1、adb shell dumpsys meminfo 或adb shell dumpsys meminfo
    2、Android Studio中对应进程的Heap
    3、内存泄露工具 LeakCanary

    cpu端:
    手机根目录下有个proc文件夹,里面会存放一些内存的信息。每个应用对应一个文件夹,文件夹的名称就是应用的pid。该文件夹下面会有一个stat文件,里面会存放些应用的运行信息。
    对整个手机,proc下同样有一个stat文件,里面有存放了类似的信息,
    计算cpu占用时,使用的公式为:(B-A)/(TB-TA)*100,其中A为被测应用第一次获取到的cpu情况,B为A间隔500毫秒后再次获取到cpu情况,TA为整个手机的cpu情况,TB为TA间隔500毫秒后再次获取到的cpu情况。当前应用有多个进程时,所得的cpu占用为多个进程的cpu占用和。

    内存端:
    android sdk提供了getTotalPss()的接口获取指定pid的内存占用。应用有多个进程时,总的内存占用为多个进程的pss值之和。

    网络流量:
    android sdk提供了TrafficStats.getUidTxBytes(uid),TrafficStats.getUidRxBytes(uid)两个接口去获取指定应用的流量使用情况。

    耗电:
    dumpsys batterystats命令里面会输出各个应用的耗电情况,但该命令对手机的系统版本有要求,且应用内使用时需要有root权限。

  • 相关阅读:
    Android 捕获异常并在应用崩溃后重启应用
    Android 浏览器 —— 使用 WebView 实现文件下载
    给 Android 研发的一些的建议
    java.util.concurrent.RejectedExecutionException
    java的关闭钩子(Shutdown Hook)
    PGP工作原理及其安全体制
    漫画:什么是红黑树?
    LINUX下IDEA等工具调试项目时提示:Unable to open debugger port
    MongoDB aggregate 运用篇(转)
    Java8系列之重新认识HashMap
  • 原文地址:https://www.cnblogs.com/6J2B2/p/13025725.html
Copyright © 2020-2023  润新知