首页 文章

Jmeter会话处理错误

提问于
浏览
0

我已经调试了,似乎会话ID没有传递给我的下一步,所以我创建了一个正则表达式提取器,并尝试将会话ID用于其他请求 . 当我运行我的脚本时,它会给我以下错误消息

Syntax used
Referance name =JSESSIONID 
Reg exp=JSESSIONID=([^;]+);
template=$1$
match no=1

java.net.URISyntaxException:索引49处路径中的非法字符:http:// eproglb / eProgesa / LoginServlet; jsessionid = $ ;; at java.net.URI $ Parser.fail(Unknown Source)at java.net.URI $ Parser.checkChars(Unknown Source)at java.net.URI $ Parser.parseHierarchical(Unknown Source)at java.net.URI $ Parser位于java.net.URL.toURI(未知来源)的java.net.URI . (未知来源)的.parse(未知来源)org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java: 286)org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1146)at org位于org.apache.jmeter.threads.JMeterThread的org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:434)的.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1135) .run(JMeterThread.java:261)在java.lang.Thread.run(未知来源)

1 回答

  • 0

    你的正则表达似乎很好,但是如果没有看到你的测试计划的响应和截图,很难说出错可能是什么 .

    在此期间,您可以考虑替代方法 . JSESSIONID基本上是cookie因此它可以通过HTTP Cookie Manager自动处理 .

    如果您需要在某处显式设置JSESSIONID cookie值,您可以使用以下几个步骤从上述HTTP Cookie管理器中获取它:

    • 将HTTP Cookie管理器添加到测试计划中

    • 将以下行添加到user.properties文件(位于JMeter安装的/ bin文件夹下):

    CookieManager.save.cookies=true
    
    • 重启JMeter(需要重启才能选择属性)

    • 根据需要访问JSESSIONID cookie值为 ${COOKIE_JSESSIONID} .

相关问题