jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】

1、同一线程下请求:

 解决方法一:添加登录请求、HTTP Cookie 管理器即可,可自动获取登录

Set-Cookie: JSESSIONID=fb65f75b-857d-4647-a716-c9fd3fad8d6f; Path=/; HttpOnly

缺点:只能使同一线程组下请求保持登录,不可跨线程组

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第1张图片

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第2张图片

方法二:打开浏览器登录并保持该网站登录状态,在线程组下添加HTTP信息头管理器,存储之前浏览器登录时获取的sessionid即可。

缺点:sessionid容易过期,不能自动获取需要每次手动更新cookie值

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第3张图片

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第4张图片

方法三:添加正则表达式,将cookie值传递给HTTP信息头管理器(只能同一线程组下引用)

提取正则表达式:

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第5张图片

修改HTTP信息头的值:

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第6张图片

重点 :

解决跨线程组登录并自动获取sessionid的问题:需要设置jmeter全局变量并调用。使用正则表达式获取sessionid,BeanShell PostProcessor设置全局变量,HTTP信息头管理器引用全局变量(跨线程组传递cookies值)

${__setProperty(newcookie,${oldcookie},)};设置全局变量newcookie

${__P(newcookie,)}引用全局变量newcookie

正则表达式:

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第7张图片

添加全局变量:

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第8张图片

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第9张图片

执行查看:【成功】

jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】_第10张图片

 

 

参考的别人的,然后自己在操作并记录了下来。

你可能感兴趣的:(jmeter跨线程自动获取Jsession(Session)值【同一线程下也在里面】)