【问题标题】:Gatling pass data from feeder to execGatling 将数据从 feeder 传递到 exec
【发布时间】:2018-11-14 18:38:29
【问题描述】:

您能帮我如何从 exec 块中的 feeder 获取数据吗?当我将 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)

【问题讨论】:

    标签: scala gatling


    【解决方案1】:

    根据gatling-grpc documentation,payload确实可以带表达式。

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

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

    【讨论】:

      猜你喜欢
      • 2016-08-20
      • 2022-01-14
      • 1970-01-01
      • 2019-02-10
      • 2019-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多