JMeter 记录 Cookie 保持登录状态
JMeter About 913 words版本
基于Apache JMeter 5.4.1
原因
后端Java
使用Session-Cookie
身份认证,对接口进行鉴权校验。
方案
提取登录接口返回后Headers
的Set-Cookie
中JSESSIONID
的值,并设置该值为全局变量,业务接口中使用取出全局变量添加到请求头中。
Regular Expression Extractor
正则表达式提取器
步骤
Name of created variable
:填写一个临时变量,如:jsessionid
Regular Expression
:提取Cookie
的正则表达式,如:Set-Cookie: JSESSIONID=(.+?);
Template ($i$ whre is capturing group number, starts at 1)
:匹配组,从1
开始,如:$1$
Match No. (0 for Random)
:匹配第几个,0
为随机匹配。可以设置为1
,取第一个匹配到的值
图示
添加Regular Expression Extractor
设置参数
BeanShell PostProcessor
BeanShell
后置处理器
步骤
Parameters
:填写会被赋值的全局变量的参数名,如:loginCookie
Script
:编写脚本给loginCookie
赋值正则提取的临时变量jsessionid
的值,脚本:${__setProperty(loginCookie,${jsessionid})};
图示
添加BeanShell PostProcessor
设置参数
HTTP Cookie Manager
Cookie
管理器
步骤
Name
:Cookie
的键,Java Session
要求的键:JSESSIONID
Value
:Cookie
的值,从全局变量loginCookie
中取,${__property(loginCookie)}
Domain
:Cookie
作用的域Path
:根路径/
,也可能是后端有设置的Context-Path
,根据后端填写
图示
添加HTTP Cookie Manager
设置参数
Views: 3,833 · Posted: 2021-08-22
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...