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请求 不写结束 其自动会找到最后一个

定时器

同步定时器

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

常数吞吐器

固定定时器

相关推荐
wanzhong2333几秒前
学习triton-第1课 向量加法
开发语言·python·高性能计算
浊酒南街2 分钟前
Pytorch基础入门4
人工智能·pytorch·python
dragon_perfect27 分钟前
全流程基于Yolov8实现在Label-Studio实现半自动标注,已经把整个流程理清楚,把所有的坑解决。
开发语言·python·yolo·labelstudio
kalvin_y_liu32 分钟前
四款主流深度相机在Python/C#开发中的典型案例及技术实现方案
开发语言·python·数码相机
AI Echoes41 分钟前
LLMOps平台:开源项目LMForge = GPTs + Coze
人工智能·python·langchain·开源·agent
王伯安呢41 分钟前
Python实战:爬取百度热搜榜,制作动态可视化报告
python·百度·中文分词·jieba·新手教程·技术教程
SUNxRUN1 小时前
【Python - 类库 - PyMySQL】(02)使用“PyMySQL“插入变量
python·pymysql
1373i1 小时前
【Python】pytorch数据操作
开发语言·pytorch·python
啃啃大瓜2 小时前
python常量变量运算符
开发语言·python·算法
蒋星熠2 小时前
WebSocket网络编程深度实践:从协议原理到生产级应用
网络·数据库·redis·python·websocket·网络协议·微服务