jmeter命令行操作&输出漂亮的html报告&解析

jmeter执行脚本的两种方式

1.GUI页面

TIM图片20200102145338.png

2.命令行
jmeter -n -t [jmx file] -l [result file] -e -o [Path to output folder]

  • jmx file:测试计划的文件名称
  • result file:输出文件路径,可以是结果日志名称
  • Path to output folder:要保存的report文件路径
  • -n:非GUI模式执行JMeter
  • -t:执行测试文件所在的位置
  • -l:指定生成测试结果的保存文件,jtl文件格式
  • -e:测试结束后,生成测试报告
  • -o:指定测试报告的存放位置
    每次运行时必须保证[result file]和[Path to output folder]内无文件/无同名文件
    否则将会报错
An error occurred: Cannot write to './HTMLReport' as folder is not empty
~apache-jmeter-5.1.1/bin/jmeter -n -t ~/make_data.jmx -Jthread_count=1 -Jloop_count=2 -l log.jtl -e -o ./HTMLReport

上面这个命令中"-Jthread_count=1 -Jloop_count=2"的意思是传参,传thread_count这个变量的值为1,loop_count这个变量的值为2.这两个变量名是已经在脚本里设定了.

  • 传参格式: -J变量名
  • 声明变量: ${__P(变量名,默认值)}


    image.png

利用已有jtl文件进行html报告生成

jmeter -g test.jtl -o /path
  • -g:后跟test.jtl文件所在的路径
  • -o:后跟生成的HTML文件存放的路径

Report解读

解读顺序为从上到下,从左到右

Dashboard

report_index.png
  • Test and Report informations 测试和报告信息

  • APDEX (Application Performance Index) APDEX(应用程序性能指数)

    指标大体看Apdex,区间为0-1,1为最高;具体解析:看wikihttps://en.wikipedia.org/wiki/Apdex

  • Requests Summary 要求摘要
    KO为失败请求数,OK为成功请求数

  • Statistics 统计
    一级菜单:请求、执行、响应时间ms、吞吐量/s、网络/kb
    二级菜单:可点击进行倒叙或者顺序的排列

    一级菜单 二级菜单
    请求 请求名
    执行 样本数
    执行 失败数
    执行 失败率
    吞吐量/s 平均响应时间
    吞吐量/s 最小响应时间
    吞吐量/s 最大响应时间
    吞吐量/s 90%请求的时间
    吞吐量/s 95%请求的时间
    吞吐量/s 每秒通过事务数
    网络/kb 接受网络速率
    网络/kb 发送网络速率
  • Errors 错误

  • Top 5 Errors by sampler 采样器的前5个错误

Charts 图表

Over Time

image.png
  • Test and Report informations 测试和报告信息

  • Response Times Over Time 随着时间的响应时间

    可通过tps和并发数判断,某接口性能临界点(拐点)

  • Response Time Percentiles Over Time (successful responses) 随时间变化的响应时间百分比(成功响应)
    从宏观层面观察一定时间段内90、95、99、最高、最小响应时间的阴影面积

  • Active Threads Over Time 随着时间的推移活动线程
    与上方两个图搭配,可判断出现性能峰值是否因为并发数增加导致

  • Bytes Throughput Over Time 随着时间推移的字节吞吐量
    常用于上传下载等测试,系统I/O情况测试

  • Latencies Over Time 随着时间的响应延时
    金融行业领域等强关联性及及时性要求场景,重要关注的因素

  • Connect Time Over Time 随着时间的推移连接时间
    用于判断响应时间中请求时间的比例(是否因为请求方网速不好)

Throughput 吞吐量(事务数)

Throughput
  • Hits Per Second 每秒点击次数
    同一秒钟发送的请求数
  • Codes Per Second 每秒状态码分布
    可以看出如果出现请求异常大体是什么原因造成
  • Transactions Per Second 每秒事务数
    tps 性能层面非常重要的指标(接口层面)
  • Total Transactions Per Second 每秒事务总数
    宏观层面总的tps
  • Response Time Vs Request 响应时间Vs请求
    我也不会看这个,知道的同学麻烦指教一下
  • Latency Vs Request 延迟与请求
    这个我也不会看这个,知道的同学麻烦指教一下

Response Times 响应时间

Over Time
  • Response Time Percentiles 响应时间百分比
    宏观层面判断接口中绝大多数响应时间
  • Response Time Overview 响应时间概述
    分为<500ms.<1500ms.>1500ms.错误 四种概述
  • Time Vs Threads 时间与线程
    判断性能拐点与线程(并发数)之间的关系
  • Response Time Distribution 响应时间分布
    相对细分的响应时间概览

你可能感兴趣的:(jmeter命令行操作&输出漂亮的html报告&解析)