【问题标题】:Combine two string variables into one in Jmeter在Jmeter中将两个字符串变量合二为一
【发布时间】:2021-05-24 04:39:08
【问题描述】:

我有一个 JSON API 请求,其中包含这些行(以及许多其他行)

"vatNumber": "${variableC},

我已经有一个名为 variableA 的变量,它会生成一个随机数字符串。我还有一个名为 variableB 的变量,它总是将“01”作为字符串,即variableC = variableA + variableB.

我已经在预处理器中尝试过,但它不起作用。

String var1 = vars.get("customerOrgNr");
String var2 = vars.get("vatSuffix"); 
vars.put("customerVatNr", var1+var2);

也试过了

"vatNumber": ${variableA}${variableB},

但这也不起作用。不接受 json 请求。

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    您的“不起作用”声明“没有告诉”我们任何事情。

    1. 如果您只需要concatenate 2 个值 - 选择 ${customerOrgNr}${vatSuffix},它将生成组合字符串
    2. 如果你有像foo01 这样的变量,其值为bar,并且想要使用这个值 - 选择__V() function,比如${__V(${customerOrgNr}${vatSuffix},)}

    演示:

    更多信息:Here’s What to Do to Combine Multiple JMeter Variables

    我还认为您需要用引号将您的值括起来:

    "vatNumber": "${customerVatNr}",
    

    检查View Results Tree监听器中的请求并再次检查生成的JSON即online JSON Validator

    【讨论】:

    • "${customerOrgNr}${vatSuffix}" 直接在 JSON 请求中有效,但是将该表达式分配给一个变量然后在 JSON 中使用第三个变量是行不通的。就我的目的而言,我认为它会起作用,但我仍然很好奇为什么会这样。
    猜你喜欢
    • 2016-07-23
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-03
    • 1970-01-01
    • 2019-10-01
    • 1970-01-01
    相关资源
    最近更新 更多