【问题标题】:How to Use Command Line Parameters in JMeter如何在 JMeter 中使用命令行参数
【发布时间】:2019-12-02 13:19:58
【问题描述】:

我正在使用 Jmeter 测试 API,我想从终端参数化项目的路径,然后我想在 JMeter 中使用这个参数。

我通过命令行发送的参数:

./jmeter -n -t your_script.jmx -Jurl=abcdef.com

我在用户定义变量中使用的参数:

${__P(url)}

但是当我在 JMeter 中运行自动化时,我的测试脚本不会转到已定义的 URL。当我检查请求正文时,我看到 POST https://1 作为 URL。

请参阅所附照片。 https://mylifebox.com/shr/3df5bb35-cf43-4488-b20b-5c2d59656212&language=en

【问题讨论】:

    标签: command-line jmeter


    【解决方案1】:

    让我们开始干净:

    1. User Defined Variables中配置变量名为url,值为${__P(url,)}

    2. HTTP Request 采样器(甚至更好的HTTP Request Defaults)中,将${url} 放入“服务器名称或IP”字段:

    3. Run your test in command-line non-GUI mode点赞:

      jmeter -n -t your_script.jmx -Jurl=abcdef.com -f -l result.jtl
      

      注意-f argument,它告诉 JMeter 覆盖现有结果文件(您可能正在查看“旧”结果,其中 url 属性值以 1 开头)

    4. 就是这样,您应该会看到 HTTP 请求采样器在 .jtl 结果文件中调用abcdef.com。如果您更改此 url 参数 - 您将在 .jtl 结果文件中看到影响:

    【讨论】:

    • result.jtl怎么设置?
    【解决方案2】:

    ${__P(url)} 放入HTTP 请求的Server Name 字段中。

    Web 服务器的域名或 IP 地址,例如www.example.com。 [不包括 http:// 前缀。] 注意:如果“Host”标头是在标头管理器中定义的,那么这将用作虚拟主机名。

    不要使用User Defined Variables

    【讨论】:

    • 我照你说的做了,但没有任何改变:(请求正文 --> POST https://1:
    • @BuseKaya 从用户定义的变量中删除 url 变量
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-13
    • 1970-01-01
    • 2018-10-08
    • 2021-08-21
    • 2012-11-30
    • 2013-03-04
    • 1970-01-01
    相关资源
    最近更新 更多