jmter深度学习

2023-10-08 16:50
文章标签 学习 深度 jmter

本文主要是介绍jmter深度学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、jmeter基本操作

请求地址:http://127.0.0.1:
8000/api/departments/
请求地址分解:
协议:http
服务器名称或ip:127.0.0.1
端口号:8000
路径:/api/departments/(端口号后面的部分)

测试计划-线程组-http请求

HTTP请求默认值:重对于复性的协议和服务器名称,端口等信息可通过添加HTTP请求默认值统一设置
添加路径:测试计划-添加-配置原件-HTTP请求默认值(习惯性测试计划的放在最上面)
信息头管理器:新增修改操作时,提交的数据是JSON格式的,需声明提交的数据的内容类型
添加路径:测试计划-添加-配置原件-HTTP信息头管理器;
点击添加-输入名称(如):Content-Type值:application/json ;Content-Encoding:utf-8

二、JMeter线程组的设置

1.JMeter并发执行和顺序执行
并发执行:JMeter默认是并发执行,执行没有顺序结果无序
顺序执行设置:点击测试计划-勾选独立运行每个线程组
2.JMeter两个特殊线程组
setUp线程组: 最先执行的线程组; tearDown线程组:最后执行的线程组
添加路径:测试计划-添加-线程(用户)-setUp线程组/tearDown线程组
3.JMeter线程组常用属性
在这里插入图片描述
线程数:模拟多少个用户使用,写100就是100个用户
循环次数:比如写3,代表100个人每人执行3遍 ;循环次数如果勾选了永远,若不手动停止,程序会一直执行下去(可能导致电脑死机)
调度器:勾选后选择循环执行进行限制;持续时间,比如写了5,那么只在5s之内循环执行;启动延迟,若写了2,则开始之前会等3s在执行

三、JMeter参数化的使用

四种方式实现参数化方式:

1.用户定义的变量 路径:测试计划-添加-配置原件-用户定义的变量
2.CSV 数据文件设置(使用最多,数据和脚本分离) 路径:测试计划-添加-配置原件-CSV 数据文件设置
2、用户参数 路径:HTTP请求-添加-前置处理器-用户参数
4、函数

用户定义的变量:

设置:想要用后面值里面的一大坨内容,只需要把前面的名称拿出来就可以了(相当于给后面的数据请了个代言人)在这里插入图片描述使用 调用格式: ${变量名}四、JMeter直连数据库操作五、JMeter的断言

CSV数据文件设置:

1、使用CSV文件存储测试数据(准备批量数据);找个本地文件夹,新建记事本csv.txt文件;书写内容:一行代表一条数据,各个字段间用英文逗号分隔;保存时另存为,保存类型要选择utf-8
在这里插入图片描述

2、编写被复用的学院新增脚本模板 (编写脚本) 注意:编码集使用UTF-8无BOM格式
3、关联脚本与数据(将文件数据导入脚本)
添加CSV 数据文件设置:测试计划-添加-配置原件-CSV 数据文件设置
文件名:导入编写好的.txt脚本文件
文件编码:utf-8
变量名称:设置变量名称,后面使用的时候调用,比如:dep_id(在消息体中使用时:${dep_id})
是否允许带引号:不用管
遇到文件结束符再次循环:false:参数数据只执行一次 true:一直循环执行
遇到文件结束符停止线程:false:不停止(配合再次循环使用) true:停止
在这里插入图片描述
注意:遇到文件结束符再次循环为false,遇到文件结束符停止线程为true不想循环时;要把线程组里面的循环次数勾选“永远”或者写上要执行的次数(也就是总共执行的数据条数,但数据比较多时不能确定有几条,直接勾选永远就可以了);否则就只能执行一条数据?

变量名称在请求体中调用;
在这里插入图片描述

用户参数:(不需要额外文件,直接在jmter里面添加数据)

实现步骤:
1)添加用户参数路径:HTTP请求-添加-前置处理器-用户参数
添加变量:填写字段的名称
添加用户:填写值;(通过添加用户,增加参数测试数据量)
在这里插入图片描述
2)设置线程组:比如上图模拟了3个用户,那么线程数就要填写3;有几个用户,线程组就要写几
在这里插入图片描述

3)请求体中变量替换:
在这里插入图片描述

函数

常见函数:
_counter计数器函数 TRUE(每个用户都有自己的计数器)FALSE(所有用户共用一个计数器)
_Random 随机数函数 参数1: 取值范围最小值(包含)参数2:取值范围最大值(包含)
_time 获取当前时间的函数 无参:获取的是距离1970/01/01 00:00:00的毫秒值
参数1:yyyyMM_dd HH:mm:ss 格式化成年\月_日 时:分:秒格式

_counter计数器函数应用场景:
当线程组设置成如下去运行时,没用函数设置之前,查看结果树处请求名字都一样;
在这里插入图片描述
结果显示:
在这里插入图片描述
若希望请求名称不一样,需进行如下设置;

  1. 通过函数助手生成函数表达式; 第3个框,选择false的话:指所有用户共用一个计数器
    在这里插入图片描述
  2. 复制函数表达式,粘贴到HTTP请求名称后面
    在这里插入图片描述
    运行结果显示:函数助手选择每个用户有自己的计数器
    在这里插入图片描述
    函数助手处选择使用全量计数器
    在这里插入图片描述
    _Random 随机数函数应用场景:
    在这里插入图片描述
    应用:
    在这里插入图片描述
    结果显示:
    在这里插入图片描述
    _time 获取当前时间的函数应用场景:

函数助手-不用设置任何参数直接点击生成
在这里插入图片描述
应用:
在这里插入图片描述

显示结果:
在这里插入图片描述

函数助手设置系统时间:
在这里插入图片描述
应用:
在这里插入图片描述
结果显示:
在这里插入图片描述

四、JMeter直连数据库

这篇关于jmter深度学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/166686

相关文章

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

深度解析Java @Serial 注解及常见错误案例

《深度解析Java@Serial注解及常见错误案例》Java14引入@Serial注解,用于编译时校验序列化成员,替代传统方式解决运行时错误,适用于Serializable类的方法/字段,需注意签... 目录Java @Serial 注解深度解析1. 注解本质2. 核心作用(1) 主要用途(2) 适用位置3

Java MCP 的鉴权深度解析

《JavaMCP的鉴权深度解析》文章介绍JavaMCP鉴权的实现方式,指出客户端可通过queryString、header或env传递鉴权信息,服务器端支持工具单独鉴权、过滤器集中鉴权及启动时鉴权... 目录一、MCP Client 侧(负责传递,比较简单)(1)常见的 mcpServers json 配置

Maven中生命周期深度解析与实战指南

《Maven中生命周期深度解析与实战指南》这篇文章主要为大家详细介绍了Maven生命周期实战指南,包含核心概念、阶段详解、SpringBoot特化场景及企业级实践建议,希望对大家有一定的帮助... 目录一、Maven 生命周期哲学二、default生命周期核心阶段详解(高频使用)三、clean生命周期核心阶

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499