【问题标题】:Paralell HTTP Request dynamically动态并行 HTTP 请求
【发布时间】:2020-05-23 18:12:33
【问题描述】:

我需要并行执行一些请求,我看到 jp@gc - 并行 HTTP 请求,但我找不到将 URL 动态加载到控制器的方法;我的问题是要命中的 URL 来自 JSON 响应;在变量中指示 URL 的方法是什么?是否存在使用 JSR232 或 beanshell 操作采样器以包含 URL 的任何方法?或者也许我如何在执行时做一个线程组和一个 HTTP 采样器?

亲切的问候,

亚历杭德罗·隆加斯 H.

【问题讨论】:

    标签: jmeter jmx jmeter-plugins


    【解决方案1】:

    将变量 as${url} 放入 HTTP Request 的路径字段中,并将协议和服务器名称字段保留为空

    如果你在url变量名中保存完整的URL,它将按原样执行URL

    作为一种特殊情况,如果路径以“http://”或“https://”开头,则将其用作完整 URL。

    【讨论】:

      【解决方案2】:

      如果您正在寻找将 URL 添加到 JMeter 运行时中的 Parallel HTTP Requests 采样器的代码:

      1. setUp Thread Group 添加到您的测试计划中
      2. JSR223 Sampler 添加到设置线程组
      3. 将以下代码放入“脚本”区域:

        SampleResult.setIgnore()
        def testTree = ctx.getEngine().test
        def parallelSamplerSearch = new org.apache.jorphan.collections.SearchByClass<>(com.blazemeter.jmeter.http.ParallelHTTPSampler.class)
        testTree.traverse(parallelSamplerSearch)
        def parallelSampler = parallelSamplerSearch.getSearchResults().first()
        parallelSampler.addURL('http://example.com')
        parallelSampler.addURL('http://jmeter.apache.org')
        
      4. 就是这样,现在并行 HTTP 请求采样器应该同时向上述 URL 发出 2 个请求。

      【讨论】:

      • 嗨,Dmitri,谢谢,它有效!,存在捕获响应的方法吗?
      • 嗨@Dmitri T,我正在处理您的建议,但我看到只有6 个请求并行执行,其他请求延迟3 秒,也许是配置?也许可能是 de jp@gc - Parallel HTTP Requests 的限制?我正在阅读文档,但没有发现任何相关内容;也许你知道?我需要并行执行 96 个请求
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 2017-01-12
      • 1970-01-01
      相关资源
      最近更新 更多