JMeter进行HTTP接口测试的技术要点

参数化

用户定义的变量

用的时候 ${名字}

用户参数

在参数列表中传递 并且也是${}

csv数据文件设置

false 不忽略首行 要首行 从第一行读取

true 忽略首行 从第二行开始

请求时的参数设置:

这里的名称是看其接口需要的请求参数的名称

这里的变量名称就是为csv里面的每一列数据重新起名字

传入的时候就用这个起的名字传递 为CSV设置的变量名称

函数参数化

参数化小总结

用户参数 是一个用户对应一份参数 多个用户对应多份参数

函数和csv是可以一个用户对应不同的参数 也可以多个用户取到不同的值

函数的局限性:就比如上面例子 counter就只是特定的数 1 2 3 4 5 6... 无法满足特定需求

bin:配置文件

docs:开发扩展组件

printable_doc:帮助手册

lib:第三方库

jmeter元件:

配置元件:初始化数据

前置处理器:参数赋值

取样器:发请求

后置处理器:响应

监听器:看结果

取样器:核心

逻辑控制器:子节点

其它元件看其父节点 父节点为取样器则父节点 否则其父节点下的所有节点

顺序:定时器在取样器前面

线程组

线程数:用户数

ramp-up:所有用户启动时间

循环次数:

运行时间:用户启动后的持续运行时间

延迟启动时间:脚本等待多久时间后开始跑

等待 启动 运行

HTTP请求 URL 参数:路径 参数列表 消息体数据

查看结果树

参数化

用户定义的变量:全局参数

用户参数:针对每个用户取不同的值 但是不能针对同一个用户取不同的值

CSV数据文件:针对每个用户的每次循环都能取不同的值

jmeter自动发送第二个请求 它可以自动判断/处理响应状态码

jmeter断言

响应断言

JSON断言

路径处注意是否有空格

查看结果树那里

方便我们查看json元素的路径

$.以开头 相当于根目录

断言持续时间

断言小总结

jmeter关联

正则表达式

-1 全部取出来 通过debug sampler看其变量名 直接写其变量名

XPath提取器

JSON提取器

JMeter属性

让其串行运行

关联小总结

录制脚本

可能录制后会有很多无用的文件 过滤

直连数据库

这里注意 写错了 是goodsID 变量名要保持一致

逻辑控制器

如果控制器

JS

勾选interpret

函数

循环控制器

foreach

正则表达式提取器

foreach请求 不写结束 其自动会找到最后一个

定时器

同步定时器

模拟高并发:同时对服务器发送请求

常数吞吐器

固定定时器

相关推荐
FreakStudio2 小时前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
用户0332126663673 小时前
使用 Python 从零创建 Word 文档
python
Csvn8 小时前
Python 两大经典坑点 —— 可变默认参数 & 闭包延迟绑定
后端·python
曲幽9 小时前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
用户5569188175311 小时前
#从脚本到独立程序:Python + Playwright 批量抓取的完整踩坑记录
python·自动化运维
兵慌码乱1 天前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
luckdewei1 天前
FastAPI 资产管理系统实战:复杂 ORM 关联、Alembic 迁移与 N+1 查询优化
python
aqi001 天前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn1 天前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python