App性能测试点总结

一、内存

测试范围
1. 空闲状态下的应用内存消耗情况
2. 中等规格状态下的应用内存消耗情况
3. 满规格状态下的应用内存消耗情况
4. 应用内存峰值情况
5. 应用内存泄露情况
6. 应用是否常驻内存
7. 压力测试后的内存使用情况

测试方法
1. 第三方工具emmage,GT,itest,wetest
2. 使用 android 提供的 adb shell dumpsys meminfo |grep packagename >/address/mem.txt 来获取
3. 使用 android 提供的 procrank
4. 使用 android 提供的ActivityManager.MemoryInfo()

二、cpu

测试范围:
1. 空闲状态下的应用CPU消耗情况
2. 中等规格状态下的应用CPU消耗情况
3. 满规格状态下的应用CPU消耗情况
4. 应用CPU峰值情况
测试方法:
1. 第三方工具emmage,GT,itest,wetest
2. 使用android提供的adb shell dumpsys cpuinfo |grep packagename >/address/cpu.txt来获取
3. 使用top命令 adb shell top |grep packagename>/address/cpu.txt 来获取

三、启动时间

测试范围:
1. 首次启动 --应用首次启动所花费的时间
2. 非首次启动 --应用非首次启动所花费的时间
3. 应用界面切换--应用界面内切换所花费的时间
测试方法:
1. am start的开始时间和displayed的完成时间
2. android 提供的 DisplayManager 来获取 activity 的启动时间

四、耗电量

测试范围:
1. 测试手机安装目标APK前后待机功耗无明显差异
2. 常见使用场景中能够正常进入待机,待机电流在正常范围内.
3. 长时间连续使用应用无异常耗电现象
测试方法:
1. 基于android提供的PowerManager.WakeLock来进行
2. 功耗的计算=CPU消耗+Wake lock消耗+数据传输消耗+GPS消耗+Wi-Fi连接消耗
3. adb shell dumpsys battery
4. 耗电管家,电池管家

五、流量

测试范围:
1. 应用首次启动流量提示
2. 应用后台连续运行 2 小时的流量值
3. 应用高负荷运行的流量峰值
4. 应用中等负荷运行时的流量均值
测试方法:
1. 第三方工具emmage,GT,itest,wetest
2. 通过 tcpdump 抓包,再通过 wireshake 直接读取包信息来获得流量
3. 查看 adb shell cat /proc/uid_stat/uid/tcp_rcv adb shell cat /proc/uid_stat/uid/tcp_snd

扫描二维码关注公众号,回复: 6272674 查看本文章

六、补充adb命令

1. 显示android模拟器上所有在执行的进程:adb shell ps

2. adb shell 获取手机设备信息:
1)设备基本信息:cat /system/build.prop | grep "product"
2)CPU信息:/proc/cpuinfo和/proc/stat
3)内存:/proc/meminfo和adb shell dumpsys meminfo
Terms
VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

猜你喜欢

转载自www.cnblogs.com/zichuan/p/10924198.html