Jmeter性能测试指标

一、性能测试概念

  • 性能:事务、物品的某些特性的评价值
  • 性能测试:通过测试工具模拟多种正常、峰值及异常负载条件来对系统的各项性能指标进行测试

二、性能测试指标

性能指标分为两个方面:

  • 系统指标(与用户场景和需求相关指标)
  • 资源指标(与硬件资源消耗相关指标)
1.响应时间

从发起请求到收到请求响应的时间

响应时间=网络响应时间+应用程序响应时间=(N1+N2+N3+N4)+(A1+A2+A3)
在这里插入图片描述

2.并发数

单位时间内发起请求的用户数

并发用户数C,计算公式C=nL/T

n:每天访问系统的用户数

L:在线用户从登陆到退出的时间

T:用户每天使用系统大概多长时间

峰值C1,即最大并发数,计算公式C1=C+³√C

最佳并发用户数:当系统的负载等于最佳并发用户数时,系统的整体效率最高,没有资源被浪费,用户也不需要等待
最大并发用户数:系统的负载一直持续,有些用户在处理而有的用户在自己最大的等待时间内等待的时候
在这里插入图片描述

3.吞吐量、吞吐率

衡量网络性能的重要指标

吞吐量:网络传输的数据量(处理客户的请求数)

吞吐率:单位时间(可以是秒/分/时/天)内网络成功传输的数据量,如请求数/秒、页面数/秒

4.事务、TPS

事务:一个动作或是一系列动作的集合,比如用户从登录到退出的一个场景就为一个事务

TPS:Transaction per second——最主要的性能指标,衡量服务器处理事务数的能力,每秒通过的事务数

5.点击量、点击率

点击量:指Web Server收到的HTTP请求数

点击率:Hits Per Second,单位时间每秒用户向Web Server提交的HTTP请求数

区分鼠标点击量:如请求一个网页,网页含有3张图片,向Web Server请求的点击数:1+3=4,而鼠标的一次点击就可以访问网页,点击数只有1次

6.资源利用率

CPU:主要解释计算机指令以及处理计算机软件中的数据

内存:与cpu沟通的桥梁,计算机中所有程序的运行都在内存中进行,内存分为物理内存、页面交换(Paging),SWAP内存(虚拟内存)

页面交换:当物理内存即实际的内存满了的时候,将物理内存中不常用的进程调出存储到虚拟内存中,以缓解物理内存空间的压力,所以当物理内存与虚拟内存的数据交换频繁的时候,这时候就要关注下内存的性能情况
SWAP内存:为进程分配虚拟的内存空间,即调用硬盘的空间作为内存使用
磁盘I/O:指单位时间内通过磁盘的数据量。主要关注磁盘的繁忙率,如果高于70%,则磁盘瓶颈

网络I/O:指单位时间内通过网络的数据量。当吞吐量大于网路设备或链路最大传输能力,即带宽时,则应该考虑升级网络设备或者增加带宽,Linux命令netstate

三、性能测试方法

负载测试、压力测试和性能测试,从测试的方法与工具来说,三者都是一样的,但是,压力测试跟负载测试都是属于性能测试的子集

1.负载测试

在一定的软硬件环境下,通过不断的加大负载来确定在满足性能指标情况下所能够承受的最大用户数。所以它的目的是为了获取最大用户数。一般不超过80%cpu(二八原则),正常情况工作下最大用户数的数据

2.压力测试

在一定的软硬件环境下,通过高负载的手段来使服务器资源处于极限的状态,测试该系统在极限状态长时间运行是否稳定。包括系统指标,服务器性能指标

四、性能测试的前提

1.性能测试的必要性研究——关键项评估

  • 主管部门、监管部门审查
  • 涉及生命财产安全
  • 大型新系统
  • 核心系统
  • 架构调整
  • 业务剧增
  • 重大缺陷修复

2.可测性
可量化为性能指标值

五、性能测试工具

  • Jmeter
  • LoadRunner
  • locust
  • 公司自研开发的工具