1、同一线程下请求:
解决方法一:添加登录请求、HTTP Cookie 管理器即可,可自动获取登录
Set-Cookie: JSESSIONID=fb65f75b-857d-4647-a716-c9fd3fad8d6f; Path=/; HttpOnly
缺点:只能使同一线程组下请求保持登录,不可跨线程组
方法二:打开浏览器登录并保持该网站登录状态,在线程组下添加HTTP信息头管理器,存储之前浏览器登录时获取的sessionid即可。
缺点:sessionid容易过期,不能自动获取需要每次手动更新cookie值
方法三:添加正则表达式,将cookie值传递给HTTP信息头管理器(只能同一线程组下引用)
提取正则表达式:
修改HTTP信息头的值:
重点 :
解决跨线程组登录并自动获取sessionid的问题:需要设置jmeter全局变量并调用。使用正则表达式获取sessionid,BeanShell PostProcessor设置全局变量,HTTP信息头管理器引用全局变量(跨线程组传递cookies值)
${__setProperty(newcookie,${oldcookie},)};设置全局变量newcookie
${__P(newcookie,)}引用全局变量newcookie
正则表达式:
添加全局变量:
执行查看:【成功】
参考的别人的,然后自己在操作并记录了下来。