原因
在使用jmeter 过程中为了方便 ,会设置很多公众信心 比如请求头 请求cook 还会设置多个线程组 在同一个线程组中 我们只需要设置一个请求请求cook 就可以了 但是 有逆骨 就是喜欢多个线程组所以出现问题了
解决方案
设置一个全局变量
步骤
在测试计划中设置一个信息头管理器
下面就是具体步骤 创建线程组
普通线程组:这是最常见的线程组类型,用来模拟虚拟用户发送请求到服务器。在普通线程组中,你设置的线程数量就相当于虚拟用户的数量。普通线程组可以并发或序列执行,取决于你的设置。
setUp线程组:这是一个特殊的线程组,它在测试开始前执行,常用来执行一些预备操作,比如说初始化一些参数,清理数据库,启动一些必须的线程等。此线程组的线程数应为1,因为所有线程将同时启动,且不关心其执行时间。
同理,还有一个和setUp线程组相对的tearDown线程组,它通常在所有其他线程组执行结束后执行,用来做一些清理工作。
所以个人建议登陆设置setUp线程组
1. 设置一个setUp线程组
2.添加一个http请求
3.在这个http 请求中添加一个 正则表导师提取器
这种就很多信息了主要是看一下你们需要的值 在登陆的结果树中的响应数据中自己对应一下
比如我这边需要的是
的值所以我这边直接这么写
4.然后在继续添加 后置处理器
这里面的具体操作一个打印 一个获取并设置全局
额外 如何查看打印日志 在下面点击日志查看就可以看见了
5 所以我们把我们需要的值提升到了全局变量
在http信息头管理器中就可以设置了
到这里我们这个就算完成了
这样我们就可以共享我们的cook 了
细节:
登陆接口的响应数据 有时候是会变化的 自己注意
还有的人打印数据是 设置的模版数据 1
小技巧 如果在这个正则表达式中 不知道是否有这个值 可以添加响应断言的判断
还可以参考别人的文档 链接:https://www.cnblogs.com/chenyq/p/14291722.htmlhttps://www.cnblogs.com/chenyq/p/14291722.html