我是JMeter的新手,遇到了这个问题,当我们点击auth页面时,两个cookie被创建,并附加到所有请求中。我的几个请求失败,因为它们没有在请求正文中获得这些cookie。请检查在-32创建的附加图像cookie是否需要附加到请求-57中。请帮助我将这些cookie传递到该请求。
sczxawaw1#
根据JMeter文档的Functions and Variables章节:属性与变量不同。变量是线程的局部变量;属性是所有执行绪共用的,而且需要使用__P或__property函式来指涉。因此,JMeter的HTTP Cookie管理器为每个线程(虚拟用户)存储cookie,它们在其他线程中不可用,即使在同一个线程组中,由于某种原因,您有几个线程组。最简单的解决方案是移动所有请求,使它们位于同一个线程组下,并将“登录”采样器置于“一次性”控制器下如果出于某种原因,您希望继续使用当前的测试设计(尽管我觉得它看起来不太好),您需要:1.从HTTP Cookie管理器中为第一个线程组中的每个线程(虚拟用户)提取Cookie1.将它们转换为JMeter属性1.在第二个线程组中,读取包含cookie的JMeter属性,并在HTTP Cookie管理器中重新创建它们它可以使用JSR 223测试元素和Groovy language来完成
1条答案
按热度按时间sczxawaw1#
根据JMeter文档的Functions and Variables章节:
属性与变量不同。变量是线程的局部变量;属性是所有执行绪共用的,而且需要使用__P或__property函式来指涉。
因此,JMeter的HTTP Cookie管理器为每个线程(虚拟用户)存储cookie,它们在其他线程中不可用,即使在同一个线程组中,由于某种原因,您有几个线程组。
最简单的解决方案是移动所有请求,使它们位于同一个线程组下,并将“登录”采样器置于“一次性”控制器下
如果出于某种原因,您希望继续使用当前的测试设计(尽管我觉得它看起来不太好),您需要:
1.从HTTP Cookie管理器中为第一个线程组中的每个线程(虚拟用户)提取Cookie
1.将它们转换为JMeter属性
1.在第二个线程组中,读取包含cookie的JMeter属性,并在HTTP Cookie管理器中重新创建它们
它可以使用JSR 223测试元素和Groovy language来完成