【问题标题】:Syntax to use parameters in Body section of HTTP Request Sampler in JMeter, using Rest API POST request with body and input from CSV file在 JMeter 的 HTTP 请求采样器的正文部分中使用参数的语法,使用带有正文的 Rest API POST 请求和来自 CSV 文件的输入
【发布时间】:2020-05-31 13:16:38
【问题描述】:

我正在使用 JMeter 测试微服务,我需要在每个请求中动态使用具有不同值的参数。此外,该参数也是包含其他常量值的查询的一部分。

我在 JMeter user.properties 文件中定义了用户变量(在 JMeter bin 文件夹中):

JMeter -- bin/user.properties

# Parameters to use in JMeter
ES_HOST=127.0.0.1
ES_PORT=9200
ES_INDEX=segments
ES_TYPE=_doc
THREAD=5
CSVDATA_ROOT=C:/devtools/apache-jmeter-5.2.1/csv_data

当然,我有用户定义的变量

以及我的测试计划是如何在 JMeter 中定义的

正如您在 View Result Tree 的以下屏幕截图中看到的那样,我在 HTTP 请求(上图)中定义并显示了参数 agentName正在工作。

我想在 HTTP 请求的正文中定义它,用在每个请求中具有不同值的参数替换硬编码的“John Doe”。

"query":"SearchStartTime=2020-01-01 00:00:00.000TO2020-01-31 23:59:59.999&AgentName=John Doe"}

我该怎么做? 我需要一种将参数添加到现有字符串的方法

我已经尝试过Using Apache JMeter to Test Elasticsearch (or any REST API)In Jmeter, What would be syntax of parameters in Body Data section of HTTP Request Sampler, for Rest APIs and input should be generated dynamically 也不能解决我的问题。

【问题讨论】:

    标签: rest jmeter http-post jmeter-5.0


    【解决方案1】:

    使用与 HTTP 请求相同的语法 - ${agentname} 获取变量值:

    "query":"SearchStartTime=2020-01-01 00:00:00.000TO2020-01-31 23:59:59.999&AgentName=${agentname}"
    

    【讨论】:

    • 太棒了!谢谢你。只有我需要相同的变量名,所以全部小写:${agentname}
    猜你喜欢
    • 2019-10-16
    • 1970-01-01
    • 2014-08-08
    • 1970-01-01
    • 2017-09-30
    • 1970-01-01
    • 1970-01-01
    • 2015-11-06
    • 1970-01-01
    相关资源
    最近更新 更多