Гатлинг передает данные от фидера к исполнителю - PullRequest
0 голосов
/ 05 июня 2018

Не могли бы вы помочь мне, как получить данные из фидера в блоке exec?Когда я использую exec с входным параметром сеанса, это не проблема, но когда я хочу использовать с 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)

1 Ответ

0 голосов
/ 13 июня 2019

согласно документации gatling-grpc , полезная нагрузка действительно может принимать выражение.

, что означает, что вы должны иметь такой код в runAction

grpc("request name")
.rpc(rpc.method)
.payload("parameter1: ${parameter1}")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...