App性能测试学习

性能测试

        通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

        以自动化手段模拟用户对某一接口发送大量请求,然后查看该接口对应服务器的反应        

性能测试的目的

        性能测试的目的是验证软件系统是否能够达到性能指标,同时发现性能瓶颈,以优化软件,起到优化系统的目的。性能测试包括一下几个方面:

  • 评估系统能力:规划系统容量规模,为系统搭建提供数据依据。
  • 找到系统短板:链路中成为瓶颈的中间件、数据库、应用服务(木桶理论)。
  • 发现系统问题:由于环境、代码、数据等原因引起的请求失败、内存、CPU、IO异常乃至宕机。
  • 性能调优:发现瓶颈后,提出优化方案、验证方案效果。
  • 验证稳定性和可靠性:疲劳稳定性测试。

术语

  • PV(Page View): 用户访问页面的次数,用来分析平均每秒有多少用户访问页面。
  • 事务:从客户端发起一个或者多个请求(这些请求组成一个完整的操作),到客户端就收到从服务器返回响应的过程。
  • TPS:每秒钟系统能够处理的事务数(事务数不一定等于请求数)
  • 事务响应时间:系统处理一个事务所耗费的时间,如登录、转账、支付等操作。
  • QPS /s:每秒处理的请求数
  • 请求响应时间:从客户端发起一个请求开始,到客户端接收到从服务器返回的响应,整个过程所耗费的时间。
  • 吞吐量:系统在单位时间内处理完成的请求数量
  • 网络带宽:强调网络最大的数据串速率,即传输数据率理论峰值。
  • 网络吞吐量:网络实际的数据传输速率

帧率(FPS)

        影响画面流畅度,与画面流畅度成正比:帧率越大,画面越流畅;帧率越小,画面越有跳动感。帧率就是1秒钟时间里传输图片的帧数,可以理解为图形处理器每秒钟刷新的次数。

分辨率

        图形的长度和宽度,即图片的尺寸。影像图像大小,与图像大小成正比;分辨率越高,图像越大;分辨率越低,图像越小。

码率(kb)

        把每秒显示的图片进行压缩后的数据量。影响体积,与体积成正比;码率越大,体积越大;码率越小,体积越小。

在码率一定的情况下,分辨率和清晰度成反比关系;分辨率越高,图像越不清晰,分辨率越低,图像越清晰。

在分辨率一定的情况下,码率与清晰度成正比关系;码率越高,图像越清晰;码率越低,图像越不清晰。

流量

        我们的手机通过运营商的网络访问internet,运营商替我们的手机转发数据报文,数据报文的总大小(字节数)即流量,数据报文是包含手机上下行的报文。

冷启动

当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动。

热启动

当启动应用时,后台已有该应用的进程,在已有该进程的情况下,这种启动会从已有的进程中来启动应用,这个方式就是热启动。

问题

1.CPU过高带来的影响

可能会使整个手机无法响应,整体性能降低,引起ANR,导致手机更耗电

2.为什么不直接用adb命令怎么计算apk的启动时间

abd shell am start -w packagename/activity

通过adb命令获取到的启动时间会有两个值,但是都与实际启动时间不匹配,经常会有两者相加都比实际启动时间小的情况

app性能工具

        perfdog简单好用,可以看到手机的分辨率、帧率、CPU

对服务器发送网络请求并返回响应体:curl 链接 -参数

压测工具:ab.exe、Memory Montior

1.apach自带的ab.exe工具 (ab命令必学)

性能测试实战课 - 学会从0到1评测软件性能、响应时间 / 吞吐量、Apache Benchmark 实战入门、直播现场对接口进行性能压测、性能测试报告分析.._哔哩哔哩_bilibili

ab命令响应体详解:

 

在返回的数据中,需要重点关注的内容有:

网卡、吞吐量、响应时间、所有请求的响应时间占比

计算目前网卡是否支持当前业务(每次返回的数据大小*请求次数)

可以通过修改并发数来调试,直到得到我们想要的结果

在响应时间合格的情况下,吞吐量数值越大表示越接近服务器性能峰值(正是我们需要的)

2.该工具位于 Android Monitor 下面,Android Monitor 是 Android Studio 自带的一个强大的性能分析工具,里面一共包含 5 个模块:Logcat、Memory、CPU、Network 及 GPU。Memory Monitor 可以实时查看 App 的内存分配情况,判断 App 是否由于 GC 操作造成卡顿以及判断 App 的 Crash 是否是因为超出了内存。

3.Heap Viewer

该内存检测工具位于 DDMS 下面,在 Android Studio 里面可以通过 Tools-Android-Android Device Monitor 打开,Heap Viewer 可以实时查看 App 分配的内存大小和空闲内存大小,并且发现 Memory Leaks。

4.MAT

MAT(Memory Analyzer Tool),是一个被老生常谈的 Android 内存分析工具,它可以清楚的获知整体内存使用情况。虽然是 Eclipse 的工具,但也可以单独运行,不需要安装 Eclipse。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值