jmeter并发测试

目录

  • 常用的压测工具
  • jmeter安装
  • 配置并执行
    • 新建测试计划 Test Plan
    • 添加线程组
      • 练习01:共10个线程,每秒钟启动一个线程(需要10秒),每个线程发送两个请求
      • 练习02:共10个线程,1秒中内启动完毕,每个线程发送1个请求
      • 练习03:共10个线程,同时发送(0秒内发送完毕),每个线程发送1个请求【模拟用户同时并发】
    • 添加请求信息
    • 添加常用的结果监听器
    • 执行测试计划
      • 查看结果观察树-View Results Tree
      • 总结报告-Summary Report
      • 聚合报告-Aggregate Report
      • 结果图
  • 参考链接

常用的压测工具

  • postman:串行测试,一般用于功能性测试,即返回结果是否正常
  • jmeter:可以多线程并行测试,一般用于压测

jmeter安装

  • 直接官网下载压缩包,解压缩,运行即可

配置并执行

新建测试计划 Test Plan

  • 修改 Name测试Demo
    在这里插入图片描述

添加线程组

在这里插入图片描述

  • Action to be taken after a Sampler error : 如果测试过程报错了怎么处理
    • Continue: 报错了继续执行
    • Stop Thread: 停止所在的线程
    • Stop Test: 停止整个测试计划
    • Stop Test Now:
    • Start Next Thread Loop:
  • Number of Threads(users): 线程数,虚拟用户数。一个虚拟用户对应一个线程。需要10个用户发送请求,则设置为10。
  • Ramp-up period(seconds): 准备时长,设置的虚拟用户数需要多长时间全部启动。需要2秒钟启动10个线程,也就是每秒钟启动5个线程,则此处设置为 2。如果设置为 1,则意思是1秒钟启动所有线程。
  • Loop Count: 循环次数,每个线程发送的请求个数,如果设置 1,则每个线程只发送1次请求就停止。如果勾选 Infinite(永远),则每个线程会一直发送请求,直到手动停止测试计划。
    在这里插入图片描述

练习01:共10个线程,每秒钟启动一个线程(需要10秒),每个线程发送两个请求

在这里插入图片描述
在这里插入图片描述

练习02:共10个线程,1秒中内启动完毕,每个线程发送1个请求

在这里插入图片描述

  • 同练习01执行,可以看到结果大约在1秒内全部返回

练习03:共10个线程,同时发送(0秒内发送完毕),每个线程发送1个请求【模拟用户同时并发】

在这里插入图片描述

  • 同练习01执行,可以看到发送结果一下子全部返回

添加请求信息

  • 后台本地在 8080 端口启动一个服务接口 /hello,没有请求参数,直接返回字符串 ok
    在这里插入图片描述

添加常用的结果监听器

在这里插入图片描述

在这里插入图片描述

执行测试计划

查看结果观察树-View Results Tree

在这里插入图片描述

总结报告-Summary Report

在这里插入图片描述

聚合报告-Aggregate Report

在这里插入图片描述

  • Label: 每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
  • Samples: 请求数——表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100
  • Average: 平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,以Transaction 为单位显示平均响应时间
  • Median(中位数): 50%用户的响应时间小于该值
  • 90% Line(90%百分位): 90%用户的响应时间小于该值
  • 95% Line(95%百分位): 95%用户的响应时间小于该值
  • 99% Line(99%百分位): 99%用户的响应时间小于该值
  • Min: 最小响应时间
  • Max: 最大响应时间
  • Error%: 错误率——错误请求数/请求总数
  • Throughput: 吞吐量(QPS)——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数

需要注意,重复运行会叠加之前的,每次运行前需要先清除之前的结果
一般而言,性能测试中我们需要重点关注的数据有: #Samples 请求数,Average 平均响应时间,Min 最小响应时间,Max 最大响应时间,Error% 错误率及Throughput 吞吐量

结果图

在这里插入图片描述

参考链接

  • https://www.cnblogs.com/zhaoyq/p/10944080.html
  • https://blog.csdn.net/zhiwenganyong/article/details/124212479
  • https://www.cnblogs.com/liuyuelinfighting/p/15000827.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/345629.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统思考—心智模式

凯恩斯说:“介绍新观念倒不是很难,难的是清除那些旧观念。”在过去的任何一年,如果你一次都没有推翻过自己最中意的想法,那么你这一年就算浪费了。旧观念像是根深蒂固的杂草,即使在新知识的光照下,也需要时…

OpenFeign远程接口调用使用公共模块出现的错误

今天在使用openfeign和sentinel实现fallback服务降级时遇到找不到类型的异常 检查代码发现没有错误,EnableFeignClients也在启动类上标注了 错误信息:A component required a bean of type com.zxc.cloud.apis.PayFeignSentinelApi that could not be f…

Mysql学习(七)——约束

文章目录 四、约束4.1 概述4.2 约束演示4.3 外键约束 总结 四、约束 4.1 概述 概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。目的:保证数据库中数据的正确、有效性和完整性。分类: 4.2 约束演示 根据需求&…

opencv快速安装以及各种查看版本命令

安装opencv并查看其版本,直接通过一个可执行文件实现。 #!/bin/bashwget https://codeload.github.com/opencv/opencv/zip/3.4 -O opencv-3.4.zip && unzip opencv-3.4.zip && cd opencv-3.4 && \mkdir build && cd build &&a…

Python | Leetcode Python题解之第142题环形链表II

题目: 题解: # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val x # self.next Noneclass Solution(object):def detectCycle(self, head):""":type head: ListNode:…

【C++题解】1389 - 数据分析

问题:1389 - 数据分析 类型:简单循环 题目描述: 该方法的操作方式为,如果要传递 2 个数字信息给友军,会直接传递给友军一个整数 n(n 是一个 10 位以内的整数),该整数的长度代表要传…

Linux安装MySQL教程【带图文命令巨详细】

巨详细Linux安装MySQL 1、查看是否有自带数据库或残留数据库信息1.1检查残留mysql1.2检查并删除残留mysql依赖1.3检查是否自带mariadb库 2、下载所需MySQL版本,上传至系统指定位置2.1创建目录2.2下载MySQL压缩包 3、安装MySQL3.1创建目录3.2解压mysql压缩包3.3安装解…

在线渲染3d怎么用?3d快速渲染步骤设置

在线渲染3D模型是一种高效的技术,它允许艺术家和设计师通过互联网访问远程服务器的强大计算能力,从而加速渲染过程。无论是复杂的场景还是高质量的视觉效果,在线渲染服务都能帮助您节省宝贵的时间。 在线渲染3D一般选择的是:云渲染…

Centos修改默认端口22

修改Centos服务器ssh链接的默认端口22到任意端口,主要两个步骤: 修改配置文件,添加端口开放防火墙 一、 vim /etc/ssh/sshd_config 在文件中 #Port 22 行下增加 # Port 22 Port [修改后端口]注意: 这里 先将其中的#Port 22前的…

java中集合List,Set,Queue,Map

Java SE中的集合框架是一组用于存储和操作对象的类和接口。它提供了丰富的数据结构,可以用于解决各种问题。Java SE中的集合框架包含以下主要类和接口: 一. Collection接口: 是集合框架的根接口,它定义了一些通用的集合操作方法…

把系统引导做到U盘,实现插上U盘才能开机

前言 有个小伙伴提出了这样一个问题:能不能把U盘制作成电脑开机的钥匙? 小白稍微思考了一下,便做了这样一个回复:可以。 至于为什么要思考一下,这样会显得我有认真思考他提出的问题。 Windows7或以上系统均支持UEF…

Switch 之 H3C S5500

System # system view <H3C> system‐view [H3C] quit <H3C># display version [H3C]display version H3C Comware Software, Version 7.1.045, Release 3116# configuration save <H3C> save <H3C> display current‐configuration # factory reset …

计算机毕业设计 | SpringBoot+vue的教务管理系统

1&#xff0c;绪论 1.1 项目背景 在这个资讯高度发展的时代&#xff0c;资讯管理变革已经是一个更为宽泛、更为全面的潮流。为了保证中国的可持续发展&#xff0c;随着信息化技术的不断进步&#xff0c;教务管理体系也在不断完善。与此同时&#xff0c;伴随着信息化的飞速发展…

Nginx04-Nginx代理、反向代理实验、LNMP流程详解与排错思路

目录 写在前面Nginx04LNMP流程详解Nginx处理静态资源流程Nginx处理动态资源流程 LNMP排错LinuxNginxPHPMysql Nginx 代理概述正向代理反向代理区别 反向代理实验&#xff08;Proxy模块&#xff09;环境准备front配置lb01配置测试流程梳理总结 写在前面 这是Nginx第四篇&#xf…

适用于电脑的 5 大嗨格式数据恢复替代方案

嗨格式数据恢复是有一定知名度的 Windows 和 Mac 恢复程序&#xff0c;旨在恢复格式化、删除和丢失的图片、视频和音频。该应用程序支持多种文件格式以及相机 RAW 图像。最好的部分&#xff1f;它的预览功能可以在恢复照片和其他媒体文件之前检查和验证它​​们——这可以节省大…

温度传感器十大品牌

温度传感器品牌排行榜-十大热电偶品牌-热敏电阻品牌排行-Maigoo品牌榜

【设计模式】行为型设计模式之 备忘录模式(快照模式)

介绍 备忘录应用场景明确并且有限&#xff0c;一般用来数据的防丢失、撤销和恢复。对大对象的备份和恢复&#xff0c;备忘录模式能有效的节省时间和空间开销。 定义 备忘录模式&#xff1a;也称为快照模式&#xff0c;在不违背封装原则的前提下&#xff0c;捕获一个对象的内…

【qt】启动窗口的玩法

启动窗口的玩法 一.应用场景二.界面类设计窗口三.main中创建四.窗口显示标识五.功能实现1.读取注册表2.md5加密3.登录实现4.保存注册表5.功能演示 六.鼠标事件拖动窗口1.找到鼠标事件的函数2.点击事件3.移动事件4.释放事件 七.总结 一.应用场景 一般我们的软件和应用都会一个登…

线性代数|机器学习-P11方程Ax=b求解研究

文章目录 1. 变量数和约束条件数大小分类2. 最小二乘法和Gram-schmidt变换2.1 Gram-schmidt变换2.2 最小二乘法2.2.1 损失函数-Lasso 和regression2.2.2 损失函数-Lasso2.2.3 损失函数-regression2.2.4 Regression岭回归-矩阵验证2.2.5 Regression岭回归-导数验证 3. 迭代和随机…

CS1061 “HtmlHelper”未包含“Partial”的定义,并且找不到可接受第一个“HtmlHelper”类型参数的可访问扩展方法“Partial”

严重性 代码 说明 项目 文件 行 禁止显示状态 错误 CS1061 “HtmlHelper”未包含“Partial”的定义&#xff0c;并且找不到可接受第一个“HtmlHelper”类型参数的可访问扩展方法“Partial”(是否缺少 using 指令或程序集引用?) 14_Views_Message_E…