APP性能--流畅度和稳定性介绍

一、流畅度



1. 流畅度介绍



  • 定义: 流畅度指的是在测试APP时,滑动操作是否顺畅,无卡顿或重叠现象。
  • 类比: 动画片由一张张图片连贯执行产生连续动作的效果,当图片切换速度足够快时,眼睛会认为是连续动作。
2. 流畅度的监控指标

  • 帧率(FPS): 即Frames per second,GPU在一秒内绘制的帧数,简单理解为一秒内呈现给用户的图片数。
    • 流畅度标准:
      • 每秒至少10-12帧,大脑才会认为动作是连续的。
      • 达到流畅效果,至少需要每秒24帧。
      • 60帧每秒是最佳流畅度,测试目标接近60帧每秒。
    • 注意事项:
      • 页面多为静态时,FPS值较小是正常的。
      • 页面数据多为动态加载时,FPS值较大(建议在24帧以上)。
3. 性能流畅度测试案例



1)目标应用



  • 目标应用: TP商城单商户
2)操作步骤



  • 需求: 打开TP商城单商户,进入首页-我要拼团,上下滑动动态2分钟(下滑1分钟,再上滑1分钟),记录FPS值。
  • 测试方法:
    1. 打开SoloPi工具,勾选帧率。
    2. 进入TP商城单商户APP,操作上述业务,观察运行时的流畅度指标。
    3. 查看流畅度运行结果。
    4. 保存流畅度详细数据后,可以查看详细的数据统计。
  • 数据保存位置: 点击保存按钮会保存记录数据到手机本地GT/GW/<ALT名>/GW_DATA目录下,后续将数据导入到电脑上,用于分析数据。
  • 实际操作: 在TB shop中划订单、平台或首页,通过SoloPi工具监测帧率。
  • 设置要求: 在开发者选项中开启GPU呈现模式分析。
二、稳定性测试



1. 稳定性测试介绍
  • 定义: 稳定性测试是通过长时间对应用程序进行无序操作,检验应用程序是否会出现异常,如闪退(crash)、无响应(ANR)等。
  • 工具: Monkey是一个命令行工具,由安卓官方提供,用于模拟用户的触摸、点击、滑动以及系统按键等操作,实现对APP的压力测试和稳定性测试。
2. 常用的ADB命令介绍



1)APP性能测试分类



  • 专项性能: APP对手机硬件资源的使用消耗,包括CPU、内存、流畅度、流量、电量等。
  • 稳定性测试: 检验APP是否会出现崩溃、闪退等问题,使用Monkey工具进行测试。
  • 服务器性能: 多人使用APP时,服务器的处理情况,如接口性能。
2)稳定性测试的工具



  • Monkey工具:
    • 来源: 由Android系统自带,路径为/system/framework/monkey.jar。
    • 操作: 模拟用户的触摸、点击、滑动及系统按键等,操作事件随机。
    • 日志分析: 测试人员结合Monkey打印的日志和系统打印的日志,修改测试中出现的问题。
3)稳定性测试的时机



  • 时机选择: 一般需要等产品相对稳定,bug较少的时候,再使用Monkey去测试待测试应用的稳定性。
4)Monkey命令参数拓展
  • 事件类型参数:
    • -pet-touch: 调整触摸事件的百分比。
    • -pet-motion: 调整动作事件的百分比。
    • -pet-anyevent: 调整其它类型事件的百分比。
  • 其它参数:
    • -kill-process-after-error: 发生错误后停止运行并保持当前状态。
    • -throttle: 设定用户操作(事件)间的时延,单位是毫秒。
5)Monkey测试错误分析步骤
  • 查看日志:
    • 程序无响应(ANR): 在日志中搜索“ANR”。
    • 崩溃问题: 在日志中搜索“NullPointerException”。
6)Monkey命名由来
  • 原因: Monkey命名源于其操作的无序性,类似于猴子乱抓乱拖的行为。
三、总结

1. APP客户端测试指标
  • CPU: 使用CPU使用率来衡量。
  • 内存: 通过pss(可能是指某种内存监控工具或指标)来监测。
  • 流畅度: 专业术语叫做FPS,即每秒帧数,用来衡量应用的流畅程度。
  • 流量: 监测网络的上传和下载量。
  • 电量: 运行时的平均电流来反映电量消耗。
2. 启动速度测试
  • 冷启动与热启动: 启动速度分为冷启动速度和热启动速度。
  • ADB命令: 使用ADB(Android Debug Bridge)命令来进行启动速度的测试。此处老师提到先了解命令,后续会详细讲解和执行。
3. 稳定性测试
  • Monkey测试: 使用Monkey工具来模拟用户长时间运行应用,以测试应用的稳定性。
  • 模拟闪退与压崩: Monkey工具通过设定参数,可以模拟应用闪退或压崩的情况,以检验应用的稳定性。
  • 日志分析: 通过查看日志来确定应用在多少次操作后崩溃,从而评估应用的稳定性。
四、知识小结

知识点

核心内容

考试重点/易混淆点

难度系数

流畅度定义

流畅度指APP滑动时的顺畅程度,帧数决定流畅度

流畅度与帧数的对应关系

🌟

每秒10-12帧为动画效果,24帧为流畅,60帧为非常流畅

帧数与流畅度的具体标准

🌟🌟

流畅度测试方法

使用工具录制TB shop等APP的滑动过程,查看每秒帧数

如何进行流畅度测试

🌟

帧率查看与分析

在开发者选项中开启GPU成像模式分析,查看帧率数据

如何查看并分析帧率数据

🌟🌟

平均帧率26,最大30,与60帧目标有差距,需优化

帧率的实际数据与优化需求

🌟

稳定性测试简介

稳定性测试属于专项测试,使用monkey工具进行无序操作测试

稳定性测试的概念与工具

🌟

monkey通过模拟触摸、点击等无序操作,检验程序是否出现异常

monkey工具的工作原理

🌟🌟

稳定性测试后续

后续将详细讲解monkey的使用与日志分析

后续课程内容预告

🌟

性能测试总结

性能测试包括CPU、内存、流畅度、电量、流量和启动速度等

性能测试的全面了解

🌟

CPU使用率、内存使用PSS、流畅度FPS、电量平均电流等为关键指标

性能测试的关键指标

🌟🌟

启动速度测试

启动速度测试需通过ADP命令进行

启动速度测试的方法

🌟

对比维度

时间线/优先级/成本效益

-

流畅度与稳定性测试的重要性对比

两者在性能测试中的优先级

🌟

不同帧率对用户体验的影响对比

帧率提升的成本效益分析

🌟

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值