性能测试 CodeArts PerfTest-管理JMeter测试报告:测试报告说明

时间:2023-11-01 16:16:50

测试报告说明

JMeter测试报告提供实时、离线两种类型的测试报告,供用户随时查看和分析测试数据

JMeter测试报告说明如表1所示。

本测试报告展现了测试过程中被测系统在模拟高并发用户的响应性能,为了更好阅读测试报告,请参考以下信息:

  • 统计维度:本报告的TPS、RPS、响应时间、并发等统计维度均为单个线程组,如线程组中有请求多个报文,只有在多个请求报文均正常返回会认为成功,响应时间也是多个请求报文的求和值。
  • 响应超时:出现该情况下是在设置的响应超时时间内(Jmx自定义),对应的TCP连接中没有响应数据返回,会将本次线程组请求统计为响应超时。出现原因一般是被测服务器繁忙、崩溃、网络带宽被占满等。
  • 校验失败:从服务器返回的响应报文不符合预期(针对HTTP/HTTPS默认的预期响应码为200),比如服务器返回404、502等。出现原因一般为高并发情况下被测服务无法正常处理导致的,如分布式系统中数据库出现瓶颈、后端应用返回错误等。
  • 带宽统计:本报告统计的是性能测试服务执行端的带宽,上行表示从性能测试服务发出的流量,下行表示接收到的流量。如果是外网压测场景,您需要关注执行机的EIP带宽是否可以满足上行带宽的要求。而下行带宽需要关注单台执行机是否超过1GB。
  • TPS:TPS是指PerfTest在统计周期内每秒从被测服务器获取到的响应用例实时统计,TPS=统计周期内的正常返回数/统计周期。
  • RPS:RPS是指PerfTest在统计周期内每秒发送到被测服务器的请求数实时统计,RPS=统计周期内发送的请求数/统计周期。
  • 如何判断被测应用优劣:根据应用本身的服务质量定义,理想状态是没有任何响应失败、校验失败的情况,如果有,需要在服务质量定义范围之内,通常情况下不超过1%,同时响应时间越低越好(2s内体验较好,5s内可以接受,超过5s则需要考虑优化),TP90、TP99指标可以客观反映出90%、99%用户的体验响应时间。
表1 JMeter测试报告说明

概念

解释

各项指标总量

所有线程组各项指标总量的汇总。

  • 最大并发:最大并发操作的虚拟用户数。
  • RPS:RPS=请求总数/响应总时长。
  • 正常返回:如设置了检查点,检查点通过的事务响应数,如未设置默认为返回2XX的事务响应数。
  • 响应时间:指从客户端发一个请求开始计时,到客户端接收到从服务器端返回的响应结果结束所经历的时间。
  • 响应码:记录压测任务进行中响应码分布的情况。
  • 带宽:记录压测任务运行所消耗的实时带宽变化。
  • 异常返回:解析失败、校验失败、响应超时、3XX、4XX、5XX、连接被拒绝的事务响应数。
  • 带宽:记录压测任务运行所消耗的实时带宽变化。
  • SLA事件:SLA中定义的事件发生情况。

RPS

是指PerfTest在统计周期内每秒发送到被测服务器的请求数实时统计,RPS=统计周期内发送的请求数/统计周期。

平均响应时间

记录压测任务平均响应时间的变化。

并发数

记录压测任务运行时,当前并发操作的虚拟用户数的变化。

带宽(KB/S)

记录压测任务运行所消耗的实时带宽变化。
  • 上行带宽:从JMeter测试执行机往外发送出去数据的速度。
  • 下行带宽:JMeter测试执行机接收到数据的速度。

响应状态分布

正常返回、解析失败、校验失败、响应超时的每秒处理事务数,该项指标与思考时间、并发用户、服务器响应能力均有关,比如思考时间为500ms,如果服务器对于当前用户的上个请求响应时间小于500ms,则该用户每秒请求2次。

  • 正常返回:如设置了检查点,检查点通过的事务响应数,如未设置默认为返回2XX的事务响应数。
  • 解析失败:HTTP响应无法被正常解析的数量。
  • 校验失败:如设置了检查点,检查点未通过的事务响应数,如未设置,返回不是2XX的事务响应数。
  • 响应超时:是在设置的响应超时时间内,对应的TCP连接中没有响应数据返回的用例请求数量。
  • 连接被拒绝:发送报文建立连接时,服务器拒绝连接数。
  • 其他错误:不属于以上几种错误的数量。

响应码分布

1XX/2XX/3XX/4XX/5XX。

响应时间区间比例

用例的响应时间区间比例。

TP最大响应时间

指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取对应的百分比的那个值作为TPXX的最大响应时间。
  • TP50:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第50%的那个值作为TP50的值。
  • TP75:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第75%的那个值作为TP75的值。
  • TP90:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第90%的那个值作为TP90的值。
  • TP95:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第95%的那个值作为TP95的值。
  • TP99:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第99%的那个值作为TP99的值。
  • TP99.9:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第99.9%的那个值作为TP99.9的值。
  • TP99.99:指在一个时间段内(如10s),统计该请求每次响应所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第99.99%的那个值作为TP99.99的值。
support.huaweicloud.com/usermanual-cpts/cpts_01_0069.html