zoukankan      html  css  js  c++  java
  • python专项测试——性能测试

     经常关注的性能指标:

    • app启动的耗时;
    • cpu占比
    • 流量消耗
    • 电量消耗
    • 内存消耗
    • 流畅度
    • 过度渲染

    一 启动耗时

    1 启动方式分类:冷启动—进程首次启动并加载数据;

                          热启动—进程已经启动但在后台运行的情况下,再次启动

    2 冷/热启动app命令:adb shell am start -W -n Package/activity ,会得到一个app启动的耗时,可以作为参考;

       冷启动后停止app命令: adb shell am force-stop Package

       热启动后停止app命令: adb shell input keyevent 3 

       获取一个应用的包名?

       输入命令:adb logcat | grep START , 启动对应应用,查找 "cmp=……" 字段,包含package/activity

    3 自动化脚本的实现:

      method 1: 获取命令执行时间,作为启动时间参考值

      method 2:  在命令前后加上时间戳,以差值作为参考值

      具体脚本见PyCharm中。

    4 分析:和竞品对比;和本产品的不同版本进行对比

    二 CPU占比


    1 命令查看app的CPU占用: adb shell  dumpsys cpuinfo | grep package

    2 自动化脚本实现: 多次运行取平均值

       见PyCharm

    3 分析:查看值是否恒定;是否是在当前系统支持下的一个合理范围内;

    三 流量消耗

    获取流量命令:

       先获取进程ID——adb shell ps | grep packagename

       再获取进程流量——adb shell cat  /proc/pid/net/dev

       Receive: app接收的数据

       Transmit: app发出的请求的数据   

       总流量=  Receive + Transmit ,即为当前app消耗的流量的总值

       对app进行一些测试操作,再次执行获取流量的命令,然后和和上次统计的流量作差,差值即为测试期间app消耗的流量

    2 脚本见Pycharm

    3 分析:竞品;不同版本

    四:电量


    1 获取电量的命令:adb shell dumpsys battery

       查看其中的level值,执行一些操作后,在此查看该值,作差。

    2 手机与电脑连接,一般默认处于充电状态,切换到非充电状态的命令:adb shell dumpsys battery set status 1 

    3 脚本测试时间建议:0.5h ~1h上

    五:内存

    1 获取内存的命令: adb shell  top

      需要取2个值:VSS——Virtual Set Size   虚拟耗用内存

                         RSS——Resident Set Size 实际使用物理内存

    2 脚本

    3 虚存和实存独立分析

    六: FPS&过度渲染

    1 FPS:frames per second

       过度渲染:屏幕上的某个像素在同一帧的时间内被绘制了多少次

    2 FPS监控方法:GPU呈现模式分析

    3 过度渲染监控 :显示GPU过度绘制

       

       

      

  • 相关阅读:
    写在最前面
    Bzoj 2281 [Sdoi2011]黑白棋 题解
    bzoj3125: CITY 题解
    CDQZ 集训大总结
    CDQZ集训DAY10 日记
    CDQZ集训DAY9 日记
    CDQZ集训DAY7 日记
    CDQZ集训DAY6 日记
    CDQZ集训DAY5 日记
    CDQZ集训DAY4 日记
  • 原文地址:https://www.cnblogs.com/insist8089/p/7039376.html
Copyright © 2011-2022 走看看