将来自jdbc请求的结果用于下一个请求

时间:2019-08-15 13:08:50

标签: jdbc jmeter

我正在使用JDBC在JMeter中的Azure SQL上进行查询。我能够成功获得响应。见下文

otp 100940

在结果变量名称中,值是OTP

我在Http请求POST方法中的下一步,请参见下文

{
    "id": ${requestId},
    "otp": "${OTP}",
    "requestId": "123456"
}

您可以看到otp已参数化。

但在实际要求中,请参见下文;

POST data:
{
    "id": 506,
    "otp": "[{otp=100940}]",
    "requestId": "123456"
}

如何连接,以便仅获得实际的otp值而没有[{otp =}]

2 个答案:

答案 0 :(得分:0)

您可以添加Regular Expression Extractor来从OTP变量中提取数字

选择Apply To: JMeter变量并编写OTP并将正则表达式用作:

otp=(\d+)

并使用模板$1$和匹配号1

  

要使用的JMeter变量名称-提取将应用于命名变量的内容

答案 1 :(得分:0)

如果您的回复是otp 100940,请使用下面的正则表达式将其提取出来:

enter image description here

现在,您可以在任何地方OTP value using ${OTP} variable

使用
{
    "id": ${requestId},
    "otp": "${OTP}",
    "requestId": "123456"
}