Jmeter—学习笔记

文章目录

  • Jmeter介绍
  • jdk安装
    • 下载
    • 安装
    • 环境变量设置
    • 测试是否安装成功
  • 运行Jmeter
    • 解压
    • 运行
  • 接口测试
    • Jmeter发get请求
      • 添加线程组
      • 添加http请求
      • 添加CSV数据文件设置
      • 添加查看结果树
    • 运行结果
  • 压力测试
  • 导出测试结果报告
    • 报告结构
      • Dashboard
      • Chart
        • Over Time
        • Throughput
        • Response Times
  • 参考资料

Jmeter介绍

Jmeter是apache公式基于Java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。但是Jmeter是Java开发的,所以运行的时候必须先要安装jdk才可以。Jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在Linux/Windows/macos上都可以使用。

Jmeter可以做接口测试和压力测试。其中接口测试的简单操作包括做http脚本(发get/post请求、加cookie、加header、加权限认证、上传文件)、做webservice脚本、参数化、断言、关联(正则表达式提取器和处理json-json path extractor)和Jmeter操作数据库等等。

jdk安装

Oracle 有两个产品实现Java平台标准版(Java SE):Java SE开发工具包(JDK)和Java SE运行时环境JRE。

JDK是JRE的超集,包含JRE中的所有内容,以及开发applet和应用程序所需的编译器和调试器等工具。JRE提供了库,Java虚拟机(JVM)和其他组件来运行用Java编程语言编写的applet和应用程序。JRE还包含Java SE规范不需要的组件,包括标准和非标准Java组件。

Oracle Java SE产品组件。
Jmeter—学习笔记_第1张图片

下载

Jmeter—学习笔记_第2张图片
Jmeter—学习笔记_第3张图片
Jmeter—学习笔记_第4张图片
在这里插入图片描述

安装

jdk和jre需要放到同一目录下。

Jmeter—学习笔记_第5张图片
Jmeter—学习笔记_第6张图片
Jmeter—学习笔记_第7张图片

环境变量设置

Jmeter—学习笔记_第8张图片
Jmeter—学习笔记_第9张图片

测试是否安装成功

Jmeter—学习笔记_第10张图片

运行Jmeter

解压

Jmeter—学习笔记_第11张图片

运行

Jmeter—学习笔记_第12张图片

接口测试

Jmeter发get请求

添加线程组

  • 测试计划上右键单击
    Jmeter—学习笔记_第13张图片
  • 添加线程组
    Jmeter—学习笔记_第14张图片

添加http请求

  • 线程组右键单击
    Jmeter—学习笔记_第15张图片
  • 生成http请求
    Jmeter—学习笔记_第16张图片
  • 写入url、路径、请求方式和参数
    Jmeter—学习笔记_第17张图片

添加CSV数据文件设置

  • 线程组右键单击
    Jmeter—学习笔记_第18张图片
  • 生成数据文件设置
    Jmeter—学习笔记_第19张图片
    Jmeter—学习笔记_第20张图片
  • 对应http请求设置
    Jmeter—学习笔记_第21张图片
    Jmeter—学习笔记_第22张图片

添加查看结果树

  • 线程组上右键单击
    Jmeter—学习笔记_第23张图片
  • 生成查看结果树
    Jmeter—学习笔记_第24张图片

运行结果

点击绿色三角形按钮运行后结果

Jmeter—学习笔记_第25张图片
Jmeter—学习笔记_第26张图片
Jmeter—学习笔记_第27张图片

压力测试

  • 设置压力测试参数
    Jmeter—学习笔记_第28张图片
  • 添加Summary Report
    Jmeter—学习笔记_第29张图片
  • 查看结果
    Jmeter—学习笔记_第30张图片

导出测试结果报告

  • 保存View Results Tree(查看结果树)结果
    Jmeter—学习笔记_第31张图片
  • 生成HTML报告
    Jmeter—学习笔记_第32张图片
    在这里插入图片描述
    Jmeter—学习笔记_第33张图片
    Jmeter—学习笔记_第34张图片
  • 点击index.html即可查看结果
    Jmeter—学习笔记_第35张图片

报告结构

报告总体分为Dashboard和Charts两部分

Dashboard

  • Test and Report informations(测试和报告信息):测试结果保存文件/测试开始时间/测试结束时间/展示过滤器。
    Jmeter—学习笔记_第36张图片
  • APDEX(Application Performance Index):应用程序性能满意度的标准,范围在0-1之间,1表示达到所有用户均满意,可以在配置文件设置。
    Jmeter—学习笔记_第37张图片
  • Request Summary:请求的通过率(OK)与失败率(KO),百分比显示。
    Jmeter—学习笔记_第38张图片
  • Statistics:数据分析,基本将Summary Report和Aggregate Report的结果合并。
    Jmeter—学习笔记_第39张图片
  • Errors: 错误情况,依据不同的错误类型,将所有错误结果展示。
    在这里插入图片描述
  • Top 5 Errors by sampler:Top5错误信息采样。
    在这里插入图片描述

Chart

Chart分为三大模块:时间维度信息(Over Time)、吞吐量(Throughput)、响应时间(Response Times)。
Jmeter—学习笔记_第40张图片

Over Time

  • Response Times Over Time脚本运行时间内响应时间分布曲线
    Jmeter—学习笔记_第41张图片
  • Response Time Percentiles Over Time (successful responses) 脚本运行时间内成功响应的请求,响应时间百分位
    Jmeter—学习笔记_第42张图片
  • Active Threads Over Time 脚本运行时间内的活动线程分布
    Jmeter—学习笔记_第43张图片
  • Bytes Throughput Over Time脚本运行时间内的吞吐量,单位是byte
    Jmeter—学习笔记_第44张图片
  • Latencies Over Time脚本运行时间内毫秒级的响应延时
    Jmeter—学习笔记_第45张图片
  • Connect Time Over Time脚本运行时间内平均连接时间
    Jmeter—学习笔记_第46张图片

Throughput

  • Hits Per Second (excluding embedded resources) 每秒点击数曲线
    Jmeter—学习笔记_第47张图片
  • Codes Per Second (excluding embedded resources)每秒状态码分布曲线
    Jmeter—学习笔记_第48张图片
  • Transactions Per Second 每秒事物数曲线
    Jmeter—学习笔记_第49张图片
  • Total Transactions Per Second
    Jmeter—学习笔记_第50张图片
  • Response Time Vs Request 响应时间中值与每秒请求数关系曲线
    Jmeter—学习笔记_第51张图片
  • Latency Vs Request 延迟时间中值与每秒请求数关系曲线

Jmeter—学习笔记_第52张图片

Response Times

  • Response Time Percentiles毫秒级百分位响应时间曲线
    Jmeter—学习笔记_第53张图片
  • Response Time Overview 响应时间概述柱状图
    Jmeter—学习笔记_第54张图片
  • Time Vs Threads 活动线程与平均响应时间变化曲线
    Jmeter—学习笔记_第55张图片
  • Response Time Distribution响应时间分布图
    Jmeter—学习笔记_第56张图片

参考资料

[1] 如何配置Java环境变量
[2] Java Platform Standard Edition 8 Documentation
[3] Jmeter接口测试+压力测试
[4] Jmeter压力测试简单示例教程
[5] JMeter性能测试,完整入门篇
[6] jmeter5.1.1新玩物:Generate HTML Report(生成HTML报告)
[7] JMeter:生成漂亮的多维度的HTML报告

你可能感兴趣的:(Jmeter—学习笔记)