更新时间:2024-12-03 GMT+08:00

管理JMeter测试报告

测试报告说明

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

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

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

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

参数

参数说明

各项指标总量

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

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

平均RPS

统计周期内的请求总数/统计周期。

平均RT

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

并发数

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

带宽(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的值。

查看实时测试报告

压测过程中,可以通过实时报告查看压测过程中各项指标的监控数据

前提条件

测试任务已启动,正在执行中。

操作步骤

  1. 登录性能测试服务控制台,在左侧导航栏中选择“JMeter测试工程”,单击待操作工程后的
  2. 在“性能报告”页签下选择需要查看测试报告的测试计划,单击,查看实时报告结果。详细参数说明请参考表1。单击“停止任务”,可以停止当前运行的任务。
  3. 测试报告名称支持修改,在“报告列表”中,鼠标放在测试报告名称上,单击后输入新的报告名称。
  4. 在“总览”页签下,您可以查看失败数/总请求数、平均RT、最大并发、成功率、带宽、动态趋势、响应码等。
  5. 在“明细”页签下,您可以查看测试计划的日志、通用测试指标、请求详情。

    1. 单击“查看日志”,在“查看日志”弹窗中可以查看请求日志、事件日志及Pod信息。其中请求日志根据请求名称、返回码、结果这三个条件,各展示10条日志。

      请求日志支持对返回码/结果/请求名称进行过滤展示。

    2. 报告明细显示的采样模式有等距抽样值和等距平均值。
      • 等距抽样值:根据用例执行时长,对大于45min的用例的趋势图以固定的时间间隔进行抽样点展示。
      • 等距平均值:根据用例执行时长,对大于45min的用例的趋势图以固定的时间间隔进行平均值展示。
    3. 单击“数据显示”下拉框,输入关键字搜索,可以显示您需要的线程组或请求数据。也可以在“数据显示”下拉框的目录中直接单击您需要显示的线程组或请求数据。
    4. 在“明细”页签下,您也可以单击“列表”进入报告指标汇总页面。
      • 单击“自定义列”,可以在“表格设置”弹框中选择需要显示的列表项;在弹框右侧拖动已选列,可以改变列表项的顺序。
        图1 表格设置

      • 单击操作栏中的查看日志。
      • 单击操作栏中的编辑线程组。

  6. 如果测试计划已关联智能分析对象中的应用监控(APM),测试报告则体现“调用分析”页签。在“调用分析”页签,通过设置查询条件,可以查看符合查询条件的APM调用详细记录。

    如果测试计划已关联智能分析对象中的主机监控(AOM),测试报告则体现“监控指标”页签。在“监控指标”页签可以查看CPU使用率、内存使用率、磁盘读取速度、磁盘写入速度信息。

查看离线测试报告

压测结束后,系统会生成离线测试结果报告

前提条件

测试任务已执行结束。

操作步骤

  1. 登录性能测试服务控制台,在左侧导航栏中选择“JMeter测试工程”,单击待操作工程后的
  2. 在“性能报告”页签下,选择需要查看报告的测试计划,单击,查看测试报告结果。详细参数说明请参考表1

    • 您可以选择下载离线报告(PDF格式)到本地进行查看,同时支持导出原始数据(CSV格式),可进行二次加工。
    • 性能测试服务只为用户保留1年内的离线报告数据。

  3. 测试报告名称支持修改,在“报告列表”中,鼠标放在测试报告名称上,单击后输入新的报告名称。
  4. 在“总览”页签下,您可以查看失败数/总请求数、平均RT、最大并发、成功率、带宽、动态趋势、响应码等。
  5. 在“明细”页签下,您可以查看测试计划的日志、通用测试指标、请求详情。

    1. 单击“查看日志”,在“查看日志”弹窗中可以查看请求日志、事件日志及Pod信息。其中请求日志根据请求名称、返回码、结果这三个条件,各展示10条日志。

      请求日志支持对返回码/结果/请求名称进行过滤展示。

    2. 报告明细显示的采样模式有等距抽样值和等距平均值。
      • 等距抽样值:根据用例执行时长,对大于45min的用例的趋势图以固定的时间间隔进行抽样点展示。
      • 等距平均值:根据用例执行时长,对大于45min的用例的趋势图以固定的时间间隔进行平均值展示。
    3. 单击“数据显示”下拉框,输入关键字搜索,可以显示您需要的线程组或请求数据。也可以在“数据显示”下拉框的目录中直接单击您需要显示的线程组或请求数据。
    4. 在“明细”页签下,您也可以单击“列表”进入报告指标汇总页面。
      • 单击“自定义列”,可以在“表格设置”弹框中选择需要显示的列表项;在弹框右侧拖动已选列,可以改变列表项的顺序。
        图2 表格设置

      • 单击操作栏中的查看日志。
      • 单击操作栏中的编辑线程组。

  6. 如果测试计划已关联智能分析对象中的应用监控(APM),测试报告则体现“调用分析”页签。在“调用分析”页签,通过设置查询条件,可以查看符合查询条件的APM调用详细记录。

    如果测试计划已关联智能分析对象中的主机监控(AOM),测试报告则体现“监控指标”页签。在“监控指标”页签可以查看CPU使用率、内存使用率、磁盘读取速度、磁盘写入速度信息。

报告对比

对于不同时间,不同条件下执行测试计划产生的测试报告,可以通过报告对比直观的查看测试结果

操作步骤

  1. 登录性能测试服务控制台,在左侧导航栏中选择“JMeter测试工程”,单击待操作工程后的
  2. 在“性能报告”页签下,单击需要对比报告的测试计划名称,也可以单击操作栏的
  3. 在“报告对比”页签,勾选需要对比的测试报告。

    最多可以选择3份离线报告进行对比,第一勾选的报告作为基线报告。

  4. 在“线程组指标对比”框中选择线程组,可以查看该线程组在不同报告中的指标对比。
  5. 线程组指标对比支持指标筛选。

    1. 单击“自定义对比指标”,在“表格设置”弹框中选择需要显示的指标项。
    2. (可选)在弹框右侧拖动已选列,可以改变列表项的顺序。
    3. 单击“确认”。