我在JMeter 3.3中创建了一个测试计划,它正在执行一系列GET和POST请求以登录我们的应用程序并再次注销。为了捕获和使用应用cookie到POST请求,测试计划使用JMeter Cookie管理器和cookie策略'standard-strict',这在我的本地Windows PC上运行得非常好。 计划是使用命令
使用(当前)JMeter 3.0在非GUI模式下在Ubuntu AWS实例上运行测试jmeter -n -t ./Login_nogui.jmx -Ljmeter.protocol.http.control.DNSCacheManager=DEBUG -l ./JMeter_LoginResults.csv -Djmeter.save.saveservice.output_format=csv
不幸的是,所有请求都因此失败而出现以下错误:
Non HTTP response code: java.lang.NullPointerException,Non HTTP response message: null
我相信我已将问题的根源缩小到JMeter Cookie管理器并尝试了其他Cookie策略,但它们要么导致相同的结果,要么成功,但登录失败,例如使用cookie策略'default'。 我是否错过任何一种方法,或者有没有办法让cookie管理器在Ubuntu上与在Windows上一样工作?
答案 0 :(得分:0)
不要指望不同版本的JMeter执行相同的操作 从JMeter 3.0到3.3的Cookie implementation changed所以我建议你在linux中使用JMeter 3.3版本
来自变化:
在CookieManager中,DEFAULT_POLICY和DEFAULT_IMPLEMENTATION常量现在是私有的。 如果您使用带有HC3CookieHandler(< JMeter 3.1)的ignorecookies,将重置配置,请确保将其重新设置。