加特林:如何在特定时间间隔后将用户数量加倍?

Gatling : How to double the number of users after specific interval?

现在我是这样注入用户的,会在30分钟内逐渐增加用户数:

setUp(
       users.inject(rampUsers(300) over ((30) minutes))
   ).protocols(httpConf)

我想要的是在第 1 分钟和第 10 分钟注入 300 个用户,在第 ​​11 分钟和第 20 分钟注入 300 个用户,即 300 + 300 = 600,在第 21 分钟和第 30 分钟注入 300 个用户minute inject 300 more users will be 300 + 300 + 300 = 900.简而言之,我想每10分钟增加一倍的用户数

您可以简单地连接这些命令:

scn.inject(
    rampUsers(300) during (10 minutes),
    rampUsers(300) during (10 minutes),
    rampUsers(300) during (10 minutes),
)

如文档所述:

The definition of the injection profile of users is done with the inject method. This method takes as argument a sequence of injection steps that will be processed sequentially. (https://gatling.io/docs/2.3/general/simulation_setup)

此外,您描述的行为可以通过 rampUsers(900) during (30 minutes).

实现

听起来,您需要 10 分钟,有 300 名用户,然后 10 分钟,有 600 名用户,最后 10 分钟,有 900 名用户。

您可以使用其中一个封闭注入配置文件来实现此目的。

scn.inject(
  constantConcurrentUsers(300) during (10 minutes),
  constantConcurrentUsers(600) during (10 minutes),
  constantConcurrentUsers(900) during (10 minutes)
)