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

时间:2024-07-16 07:04:20

参数化

用户定义的变量

 用的时候 ${名字}

用户参数

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

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

定时器

同步定时器

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

常数吞吐器

固定定时器