JMeter JSR223 后处理器获取 Cookie
JMeter JSR223 PostProcessor GET COOKIE
我在 JMeter 中发现的每一个 link cookie 都是基于 cookie 管理器的。但不幸的是,如果更改路径,JMeter 会丢失 cookie,并且我无法更改 JMeter 属性以使用相关解决方案,因此我必须在请求后使用 JSR223 PostProcessor 设置变量。
但我找不到任何相关信息 - 每个 link 都是关于使用 HTTP Cookie 管理器的。
请帮助解决没有 Cookie 管理器的问题。
blazemeter 有一个关于 creating cookies in JSR223
的很好的例子
import org.apache.jmeter.protocol.http.control.*
//Get cookie manager
CookieManager cm = sampler.getCookieManager()
//Set cookie currency to EUR
cm.addFile("C:/work/jmeter-scripts-samples/cookie.txt")
The method CookieManager.addFile(String cookieFile) adds the cookie defined in the cookieFile parameter (cookie.txt in this example) to the cookie manager.
We will create a cookie by adding the following line to the PreProcessor script:
Cookie c = new Cookie("sampleCookie", "sample", "opencart.abstracta.us", "/", false, 1557578515)
首先描述的情况听起来很奇怪,JMeter 应该能够解析给定的 cookie:
- cookie 有效(完全符合 RFC 6265)
- HTTP Request 采样器配置正确(域匹配 cookie 域,路径匹配 cookie 路径等)
如果您绝对确定您的应用程序正在做它应该做的事情(包括设置无效的 cookie),您可以通过以下方式减少 HTTP Cookie Manager 的限制来解决这个问题:
将下一行添加到 user.properties 文件:
CookieManager.check.cookies=false
使用另一个 Cookie Policy
,即 netscape
如您所见,即使 Domain
和 Path
为空,JMeter 仍将 cookie 添加到请求中:
更多信息:HTTP Cookie Manager Advanced Usage - A Guide
在任何情况下,您都应该能够从 Set-Cookie header using Regular Expression Extractor 中提取 cookie 并将其添加到请求中,如上所述。
我在 JMeter 中发现的每一个 link cookie 都是基于 cookie 管理器的。但不幸的是,如果更改路径,JMeter 会丢失 cookie,并且我无法更改 JMeter 属性以使用相关解决方案,因此我必须在请求后使用 JSR223 PostProcessor 设置变量。
但我找不到任何相关信息 - 每个 link 都是关于使用 HTTP Cookie 管理器的。
请帮助解决没有 Cookie 管理器的问题。
blazemeter 有一个关于 creating cookies in JSR223
的很好的例子import org.apache.jmeter.protocol.http.control.* //Get cookie manager CookieManager cm = sampler.getCookieManager() //Set cookie currency to EUR cm.addFile("C:/work/jmeter-scripts-samples/cookie.txt")
The method CookieManager.addFile(String cookieFile) adds the cookie defined in the cookieFile parameter (cookie.txt in this example) to the cookie manager.
We will create a cookie by adding the following line to the PreProcessor script:
Cookie c = new Cookie("sampleCookie", "sample", "opencart.abstracta.us", "/", false, 1557578515)
首先描述的情况听起来很奇怪,JMeter 应该能够解析给定的 cookie:
- cookie 有效(完全符合 RFC 6265)
- HTTP Request 采样器配置正确(域匹配 cookie 域,路径匹配 cookie 路径等)
如果您绝对确定您的应用程序正在做它应该做的事情(包括设置无效的 cookie),您可以通过以下方式减少 HTTP Cookie Manager 的限制来解决这个问题:
将下一行添加到 user.properties 文件:
CookieManager.check.cookies=false
使用另一个
Cookie Policy
,即 netscape
如您所见,即使 Domain
和 Path
为空,JMeter 仍将 cookie 添加到请求中:
更多信息:HTTP Cookie Manager Advanced Usage - A Guide
在任何情况下,您都应该能够从 Set-Cookie header using Regular Expression Extractor 中提取 cookie 并将其添加到请求中,如上所述。