在 Gatling 中传递运行时参数
Pass runtime arguments in Gatling
我正在尝试传递运行时参数,同时 运行 对几个字段进行 gatling 测试。例如,我试图在 运行 测试时动态传递用户数。我该怎么做?
最简单的方法是 Java 系统属性,例如,如果您将 workload model 定义为:
setUp(scn.inject(atOnceUsers(1)).protocols(httpProtocol))
如果您将 system property 的硬编码更改为动态读取,例如:
setUp(scn.inject(atOnceUsers(Integer.parseInt(System.getProperty("userCount")))).protocols(httpProtocol))
您将能够通过 -D
command-line argument 动态传递所需数量的用户,例如:
gatling.bat -DuserCount=5 -s computerdatabase.BasicSimulation
更多信息:Gatling Installation, Verification and Configuration - the Ultimate Guide
这记录在 official documentation:
This can be done very easily with additional JAVA_OPTS in the launch script:
JAVA_OPTS="-Dusers=500 -Dramp=3600"
val nbUsers = Integer.getInteger("users", 1)
val myRamp = java.lang.Long.getLong("ramp", 0L)
setUp(scn.inject(rampUsers(nbUsers).during(myRamp.seconds)))
// Of course, passing a String is just as easy as:
JAVA_OPTS="-Dfoo=bar"
val foo = System.getProperty("foo")
我正在尝试传递运行时参数,同时 运行 对几个字段进行 gatling 测试。例如,我试图在 运行 测试时动态传递用户数。我该怎么做?
最简单的方法是 Java 系统属性,例如,如果您将 workload model 定义为:
setUp(scn.inject(atOnceUsers(1)).protocols(httpProtocol))
如果您将 system property 的硬编码更改为动态读取,例如:
setUp(scn.inject(atOnceUsers(Integer.parseInt(System.getProperty("userCount")))).protocols(httpProtocol))
您将能够通过 -D
command-line argument 动态传递所需数量的用户,例如:
gatling.bat -DuserCount=5 -s computerdatabase.BasicSimulation
更多信息:Gatling Installation, Verification and Configuration - the Ultimate Guide
这记录在 official documentation:
This can be done very easily with additional JAVA_OPTS in the launch script:
JAVA_OPTS="-Dusers=500 -Dramp=3600"
val nbUsers = Integer.getInteger("users", 1)
val myRamp = java.lang.Long.getLong("ramp", 0L)
setUp(scn.inject(rampUsers(nbUsers).during(myRamp.seconds)))
// Of course, passing a String is just as easy as:
JAVA_OPTS="-Dfoo=bar"
val foo = System.getProperty("foo")