在JMeter中,如何从REST POST请求(而不是响应)中捕获值?

时间:2019-10-30 22:26:51

标签: jmeter jmeter-4.0

REST POST请求的一部分如下所示,其中我为VIN和DEALER_ID传递了不同的值:

        <ns3:PARAM>
              <ns3:ITEM>VIN</ns3:ITEM>
              <ns3:VALUE xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">${vin}</ns3:VALUE>
        </ns3:PARAM>
        <ns3:PARAM>
              <ns3:ITEM>DEALER_ID</ns3:ITEM>
              <ns3:VALUE xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">${dealer_id}</ns3:VALUE>
        </ns3:PARAM>

我需要从$ {vin}和$ {dealer_id}中提取值,这样我就可以将这些值与从Response中捕获的其他值一起包含在CSV报告中。我知道如何从Response中捕获值,但不知道如何从Request中的变量捕获。有人可以帮忙吗?谢谢。

1 个答案:

答案 0 :(得分:1)

只需使用Sample Variables属性

  1. 将下一行添加到 user.properties 文件:

    sample_variables=vin,dealer_id
    
  2. 下次您run JMeter script in command-line non-GUI mode喜欢:

    jmeter -n -t test.jmx -l result.jtl
    

    result.jtl文件将有2个额外的列:vindealer_id分别保存每个请求的相应JMeter变量的值

如果要将值存储到单独的文件中,则可以使用Flexible File Writer插件