我的加特林版本是2.2.0,例如:
# resource.csv file
===============
user
user1
user2
# object file
===============
object REntity {
val feeder = csv("resources.csv").circular
val entity =
// ==================
// log in
// ==================
feed(feeder)
.exec(
http("example")
.post("/authentication?name=${user}")
.body(session => s"${Utils.getCredential(user)}")
).exitHereIfFailed.pause(Config.ThinkTime)
}
Run Code Online (Sandbox Code Playgroud)
Utils.getCredential(user: String): String只是一个函数,它接受用户名并返回凭证字符串。
如您所见,用户名存储在resources.csv文件中。我可以简单地用.post("/authentication?name=${user}")。但是我如何将其称为像${Utils.getCredential(user))}这样的变量,这会引发错误。
有任何想法吗?谢谢你的时间!
我搜索了加特林的文档,在这里找到了答案。
它有两个部分介绍1)。设置属性和2)获取属性。
基本上来说,获取属性的方法应该是:
// say resources.csv looks like this:
// =====================
// user,entityID
// Jim,1001
// Mike,1002
val feeder = csv("resources.csv").circular
val name = session("user").as[String] // => "Jim"
Run Code Online (Sandbox Code Playgroud)
答案应该是:
object REntity {
val feeder = csv("resources.csv").circular
val entity =
// ==================
// log in
// ==================
feed(feeder)
.exec(
http("example")
.post("/authentication?name=${user}")
.body(session => Utils.getCredential(session("user").as[String]))
).exitHereIfFailed.pause(Config.ThinkTime)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3739 次 |
| 最近记录: |