1
我正尝试使用加特林,在这里我只是想在第一个方案中的迭代执行一些步骤,在这里我的代码doIf不会话
def create(): ScenarioBuilder = {
scenario(name)
.exec(session => session.set("DEBUG", debug_set))
.exec(session => session.set("client_id", session.userId))
.doIf(session => session("initialized").asOption[String].isEmpty) {
exec(Identity.getIdentityToken)
exec(session => session.set("initialized", "true"))
}
.exitHereIfFailed
.during(Duration(15, MINUTES)) {
exec(X.setupVars)
.exec(X.create)
.pause(Duration(1, SECONDS))
.exec(X.get)
}
}
}
不知怎的,第一次迭代,其中没有定义的初始化工作it's它没有到达那里,因为我没有看到日志执行其中一个步骤。
任何想法我做错了什么?
感谢了很多!虽然加特林可以抱怨的错过的点,而不是运行,而不是执行该块 – paul
加特林几乎没有办法检查这一点。你正在做的是放弃方法调用返回的值。 AFAIK,即使Java编译器也不检查这一点,只有像SonarQube这样的静态分析工具才会发出一些警告。 –
任何想法为什么现在它为每个场景执行?我猜是因为场景的范围是每个用户/场景。任何想法如何在用户/场景之间共享这些会话值?每个场景我有100个用户,我不想初始化100次。 – paul