首页 > 解决方案 > 在控制台上打印加特林会话映射值

问题描述

我对加特林相当陌生,我正在尝试将会话的 Map 值打印到控制台。会话中保存的值是格式。

sessionVariable -> Map (key1 -> Map(nkey1 -> nval1, nkey2 -> nval2 ...), key2 -> val2, key3 -> val3)

我正在尝试从会话变量中获取val2或什至。nval1

这个问题这个问题,我看到我可以做类似的事情

val printSesssionVar = scenario("print session var").exec{
    session =>
      println(session("<your session var>").as[String])
      session
  }
.

所以我试过了

 val printSesssionVar = scenario("print session var").exec{
    session =>
      println(session("sessionVariable(2)").as[String])
      println(session("sessionVariable[2]").as[String])
      println(session("${sessionVariable[2]}").as[String])
      println(session("${sessionVariable.key2}").as[String])
      session
  }

文档中,在方法中使用类似 ${sessionVariable.key2} 的东西是正确的,但我想将结果打印到控制台。

但似乎没有一个工作。请问有什么建议吗?

标签: scalaconsolegatling

解决方案


实际上,我找到了一种方法;也就是说,从会话中获取变量不是作为字符串,而是作为返回数据的正确格式的 Map。

val printSesssionVar = scenario("print session var").exec{
    session =>
      val varFromSession = session("sessionVariable(0)").as[Map[String, Any]])
      println(varFromSession("key2"))
      session
  }

推荐阅读