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: 4,802 · Posted: 2021-08-22
            
            ————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
 
        Loading...