使用 JMeter 从响应头中提取位置

Fra*_*rdo 5 string bash jmeter http-headers

我有这个字符串:

Location ?/cochise/workflow/5c46e69364ddf300013412b5
Run Code Online (Sandbox Code Playgroud)

如何使用 jmeter 提取最终的十六进制代码?

小智 8

使用以下配置添加Regular Expression Extractor后处理器作为您的请求的子项:

  • 适用于:Main sample and sub-samples
  • 要检查的字段:Response Headers
  • 参考名称:myVar
  • 正则表达式:Location: .+\/(.*?)\n
  • 模板:$1$
  • 比赛编号:1
  • 默认值:NOT_FOUND

现在您可以使用${myVar}包含十六进制值的 jmeter 变量。您可以在线程组级别添加查看结果树和调试采样器,以确保提取正确的值。

参考


Dmi*_*i T 5

最简单的方法是使用正则表达式提取器

  1. 添加正则表达式提取器作为返回上述标头的请求的子项
  2. 配置如下:

    在此处输入图片说明

    为方便起见,这里是正则表达式的文本形式:

    /cochise/workflow/(.*)
    
    Run Code Online (Sandbox Code Playgroud)
  3. 就是这样,您现在应该能够根据需要访问提取的值${foo}

  4. 另请注意,您可以通过查看结果树侦听器的RegExp Tester模式测试正则表达式。这种方法与 ie Dummy Sampler结合使用可以大大加快脚本开发过程,因为您不必重新运行整个场景来测试提取器:

    在此处输入图片说明