繁体   English   中英

加特林将数据从馈线传递给执行官

[英]Gatling pass data from feeder to exec

你能帮我解决一下如何从exec块中的feed中获取数据吗? 当我使用exec与session输入参数不是问题,但是当我想使用ActionBuilder时我不知道该怎么做。 文档说使用Gatling EL,但似乎它只能用于http协议。 我想使用gRPC协议,所以我不能使用方法http()。

你知道怎么做吗?

我的代码:

def runAction : ActionBuilder = {
    //TODO how to get parameter1 and parameter2 from session or feeder here.

  }

 def getRandomData() = Map("parameter1" -> UUID.randomUUID.toString, "parameter2" -> (Random.nextInt(100000) + 700000))

  val feeder = Iterator.continually(getRandomData())

scenario("TestGRPC server")
    .feed(feeder)
    .exec(session => {
      val parameter1= session("parameter1").as[String] //here is works
      val parameter2= session("parameter2").as[Int] //here is works
      println("parameter1: " + parameter1+ "parameter2: " + parameter2) //print diffrent for each execution
      session
    })
    .exec(runAction)

setUp(
    grpcScenario.inject(
      constantUsersPerSec(2) during (durationInSeconds seconds))
  ).protocols(grpcConfig)

根据gatling-grpc文档 ,有效负载确实可以表达。

这意味着你应该能够在'runAction'中拥有这样的代码

grpc("request name")
.rpc(rpc.method)
.payload("parameter1: ${parameter1}")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM