Как извлечь поле из файла JSON с помощью Gatling - PullRequest
0 голосов
/ 28 января 2019

Я новичок в Gatling и Scala. Я пытаюсь написать сценарии для тестирования API и выполнения некоторых http-запросов.У меня есть файл JSON с массивом объектов.Я хотел бы извлечь поле идентификатора, чтобы получить с ним http-запрос (множественное получение).Я пытаюсь использовать фидер, я не уверен в том, как он работает.

Вот мой код:

val jsonFileFeeder = jsonFile("test.json")

  val scn = scenario("Http mget document").feed(jsonFileFeeder)
    .repeat(requests, "i") {
      exec(http("document:mget")
        .post("http://" + host + ":7512/index/collection/_mGet")
        .header("something", jwt)
        .body(StringBody(""" \"ids\": $[id]"""))
        .check(jsonPath("$.._id[*]").findAll.saveAs("id"))
        .check(status.is(200))
      )
    }

Так что в основном я пытаюсь получить идентификаторы изфайл (поле "_id") и сохраните его.

.check(jsonPath("$.._id[*]").findAll.saveAs("id"))

Как вы можете догадаться, это не работает, и у меня есть эта ошибка:

10:00:52.115 [WARN ] i.g.h.e.r.DefaultStatsProcessor - Request'document:mget' failed for user 1: jsonPath($.._id[*]).findAll.exists, found nothing

Мой файл json выглядит так:

[
    {
         "requestId":"99999",
         "status":200,
     ///...///
         "result":
         {
             "_id":"95F8NF",
             "_version":1,
    ///...///

Спасибо за вашу помощь

...