5.jmeter录制脚本及数据库操作

一、当没有接口文档时,如何使用jmeter录制和创建脚本

抓包

badboy

jmeter自带的http代理服务器

1.新建一个线程组用来接受录制的脚本

2.新建代理服务器

3.设置代理服务器端口:8888;目标控制器:设置为你录制的目标线程组;Type:默认为httpclient,若报错修改为java

4.设置代理服务器过滤内容,过滤内容前后两端输入.*,特殊符合如.则在.前输入转义符\,添加建议排除,并在建议排除内容后输入.*

包含模式:url匹配正则表达式,包含此项 如:.*localhost.*

排除模式:url匹配正则表达式,不包含此项 如:.*.css .*.jpg .*.jpeg .*.png .*.js

5.客户端设置:让客户端的请求通过代理服务器发送

6.点击启动按钮,运行代理服务器

7.在浏览器页面中进行操作,成功后,点击停止,就能在jmeter当中看到抓取到的接口请求 了。

8.关闭网络代理

9.回到jmeter调试接口测试脚本

如:增加cookie管理器

增加正则提取器等

二、jmeter数据库操作

1.查看数据库版本,下载引入数据库的驱动jar包,

mysql驱动jar包下载

放到jmeter/lib目录下

或放在任意目录,通过:测试计划>浏览>打开驱动路径>选择驱动 载入驱动

2.新建 JDBC Connection Configuration

3.编辑 JDBC Connection Configuration

4.新建JDBC Ruquest

5.编辑JDBC Ruquest

6.可新增一个察看结果树察看返回值

7.使用返回的变量,新建BeanShell取样器

8.编辑BeanShell取样器,通过{um},{pw}调用返回值

复制代码
#取值,打印
log.info(var.getObject("result").get(1).get("username"));  #1表示取下标为1的值
log.info(var.getObject("result").get(1).get("password"));
#设置为全局变量
vars.put("um",var.getObject("result").get(1).get("username")); #设置下标为1数据的username为um的全局变量
vars.put("pw",var.getObject("result").get(1).get("password"));
相关推荐
来者皆善3 分钟前
了解Mysql优化吗?如何优化索引?
数据库·mysql
赤壁小虾2 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例
java·前端·数据库
MC皮蛋侠客3 小时前
SQLAlchemy 系列(七):高级建模与高效写入——批量 DML、方言与扩展
数据库·python
奈斯先生Vector3 小时前
把 Midjourney 二次编辑做成生产系统:customId 能力令牌、Action Graph 与 WebUI 精修工作台
数据库·人工智能·架构·aigc·音视频·midjourney
Lethehong4 小时前
双擎并驱·全链路并行:KFS让TB级异构增量同步秒级到达
数据库
MC皮蛋侠客4 小时前
SQLAlchemy 系列(八):AsyncIO、并发与 Web 生命周期——让每个并发任务持有自己的 Session
数据库·python
一水5 小时前
Redis实战:一个AI工作流系统里的五个应用场景,从传参到限流的完整链路
数据库·redis·wpf
枫叶v.5 小时前
Prompt Injection 防不住怎么办?从 Source-Sink 模型设计 Agent 安全边界
数据库·安全·prompt
Lucky_Turtle6 小时前
【Milvus】向量数据库
数据库
吴声子夜歌6 小时前
MongoDB 8.0——安全性
数据库·mongodb