我正在负载测试的目标系统有一个mode
,指示是否适合对其进行负载测试。
我只想在模拟开始时检查一次该模式(即,我不想一遍又一遍地检查每个用户)。
这是我想出的,但是System.exit()
似乎很苛刻。
我定义了一个执行链,用于检查模式是否是我想要的值:
def getInfoCheckNotRealMode:ChainBuilder = exec(
http("mode check").get("/modeUrl").
check( jsonPath("$.mode").saveAs("mode") )
).exec { sess =>
val mode = sess("mode").as[String]
println(s"sengingMode $mode")
if( mode == "REAL"){
log.error("cannot allow simulation to run against system in REAL mode")
System.exit(1)
}
sess
}
然后我将“检查”方案与实际方案并行运行,如下所示:
val sim = setUp(
newUserScene.inject(loadProfile).
protocols(mySvcHttp),
scenario("Check Sending mode").exec(getInfoCheckNotRealMode).
inject(atOnceUsers(1)).
protocols(mySvcHttp)
)
我看到的问题:
有更好的方法吗?
是否存在某种“可以在模拟开始之前”阶段进行检查的地方?