Как передать JSON пользователю Gatling Setup - PullRequest
0 голосов
/ 13 февраля 2019

У меня есть этот файл input.json

[
  {
    "url": "https://api.origin.cloud/dev/battledriver/Organizations/",
    "user":100

  }
]

Теперь в настоящее время я отправляю URL через фидер Json в код Gatling, теперь какой должен быть синтаксис для отправки пользователя в скрипт Gatling ниже симуляции пакета

import baseConfig.BaseSimulation
import io.gatling.core.Predef._
import io.gatling.http.Predef._

import scala.concurrent.duration.DurationInt

class OgreBattleDriverWithJsoniterator extends BaseSimulation {

  val usersDataSource = jsonFile("input.json").random
  var idNumbers = (21 to 33).iterator

  def getNextOrgId() =
  {
    if (!idNumbers.hasNext)
      idNumbers = (21 to 33).iterator
    Map("orgId" -> idNumbers.next())
  }

  val customFeeder = Iterator.continually(getNextOrgId())

  def getSpecificOgreID() = {
    repeat(100) {
      exec(flushHttpCache)
       feed(usersDataSource)
           .feed(customFeeder).
        exec(http("Get Specific Driver Org Id")
        .get("${url}"+"${orgId}")

          .check(status.is(200)) // check for a specific status
          .check(jsonPath(path = "$.name").saveAs(key = "name"))) // check for a specific status
        .exec { session => println(session); session } // parameter for the orgId goes here
        .pause(1)

    }
  }



  val scn = scenario("Ogre Battle Driver Event")

    .forever() {exec(getSpecificOgreID())

      .pause(5)
      //.pause(5)
    }

  // Run for a fixed duration
  setUp(
    scn.inject(
      nothingFor(5 seconds),

      atOnceUsers(StringBody("${user}"))
     // atOnceUsers(100)
      // rampUsers(300) during (60 second)
      //rampUsers(1) during  (20 second)
    ).protocols(httpConf.inferHtmlResources()))
    .maxDuration(1 minute)

}

Проблема с приведенным выше кодом заключается в том, что atOnceUsers (StringBody ("$ {user}")) выдает ошибку в редакторе IntelliJ для исправления синтаксиса. Укажите решение, как я могу отправить пользователя из файла JSON в часть настройки Gatling?

...