JSR223采样器jmeter /传递cookie数据

时间:2018-01-30 13:53:00

标签: ajax jmeter jsr223 cookiemanager

我正在尝试使用JSR223采样器模拟并行的ajax请求,如此处所述https://www.blazemeter.com/blog/how-load-test-ajaxxhr-enabled-sites-jmeter

但是对于我的一系列请求,我得到了error,Invalid API/Auth Key 我认为这是因为身份验证cookie没有被传递,我试图使用

从前一个采样器中获取cookie
HTTPSamplerProxy previousSampler = ctx.getPreviousSampler();
CookieManager cookieManager = previousSampler.getCookieManager();
HTTPSampleResult previousResult = (HTTPSampleResult)ctx.getPreviousResult();
log.info("Cookie Count is : "+ cookieManager.getCookieCount());

但是我收到了错误

Cannot invoke method getCookieCount() on null object

,我确实在我的测试计划中启用了cookie管理器。

任何关于我做错事的帮助都会很棒。

1 个答案:

答案 0 :(得分:0)

您获得的错误意味着没有与采样器关联的HTTP Cookie Manager。您需要将其添加到测试计划中,您的代码应该按预期开始工作。

请注意,到目前为止,有一种更简单的方法来实现AJAX请求而无需进行任何编码,有Parallel Controller可以通过并行运行子代来模仿AJAX调用。只需将其添加到您的测试计划并移动代表其下的AJAX调用的HTTP请求采样器。如果需要,请参阅How to Use the Parallel Controller in JMeter了解更多详情。