【问题标题】:Multiple POST requests using Jmeter使用 Jmeter 的多个 POST 请求
【发布时间】:2017-09-25 13:31:29
【问题描述】:

我必须对我的应用程序进行压力测试才能创建 1000 个用户。为了创建用户,我使用 json 执行 POST 请求:

{
 "code": "string",
 "domainName": "string",
 "enabled": true,
 "name": "string"
}

我不知道如何使用 jmeter 创建多个用户。有for循环吗?另外,我如何解决代码必须唯一这样每个用户都需要一个唯一代码这一事实?

【问题讨论】:

    标签: post jmeter stress-testing


    【解决方案1】:
    1. 要创建更多虚拟用户,只需在Thread Group 下定义任意数量的用户即可

    2. 要发送唯一数据,您可以将 code 值替换为 JMeter Function,例如:

              {
                "code": "${__threadNum}",
                "domainName": "string",
                "enabled": true,
                "name": "string"
              }
      

      上面的例子使用__threadNum() function,它基本上返回当前的虚拟用户号,所以第一个用户的代码是1,第二个用户的代码是2,等等。您还可以考虑以下替代方案:

      • __Random() - 生成给定范围内的随机字符串
      • __RandomString() - 从给定的源数据生成一个随机字符串
      • __UUID() - 生成独特的 GUI 结构
      • counter() - 每次调用时都会生成一个递增的数字

    有关 JMeter 函数概念的更多信息,请参阅Apache JMeter Functions - An Introduction。

    【讨论】:

      【解决方案2】:

      是的,有一个循环控制器,您可以在该循环中从 CSV 加载数据 - 请查看 this StackOverflow answer

      【讨论】:

        【解决方案3】:

        虽然使用循环会创建 1000 个用户,但它们不会同时执行。假设您的意图是对 1000 个用户同时执行请求进行压力测试,一个普通的线程组就足够了。 您可以使用 CSV 控制器 (http://jmeter.apache.org/usermanual/component_reference.html#CSV_Data_Set_Config) 设置不同的用户,这样每个线程都有自己的用户变量。如果您想要更精细的行为,可以使用其他线程组控制器。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-12-07
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多