Gatling - объединение JSON файлов внутри содержимого c JSON - PullRequest
1 голос
/ 23 марта 2020

Galing версия: 3.3.1

Я пытаюсь опубликовать json полезных нагрузок, используя несколько файлов. Эти файлы содержат сегмент большей JSON полезной нагрузки [уникальный json файл для каждого пользователя].

Поскольку каждый Json файл является сегментом / дочерним элементом большего JSON, мне нужно объединить файлы внутри содержимого stati c JSON. Это та точка, в которой я застрял и мне нужна помощь.

Например: Весь json Структура : -

{
"Static element1" : "Static value",
"Static element2" : "Static value",
"data" : {
"this part of json will come from JSON files generated by Development team"
}
{

Я все еще учусь Гатлингу и до публикации На этот вопрос я попытался найти решение по существующим публикациям, но не смог найти или реализовать с моими ограниченными знаниями.

Подход, который я попытался в качестве первого шага, - добавить единственный путь к файлу JSON через язык EL в пределах содержимого c через фидер. Если можно было бы опубликовать один файл, то я планировал добавить счетчик для перебора всех файлов.

Пользовательский фидер с путем к файлу [сейчас я использую один файл, но в конечном итоге придется использовать несколько]:

 val customFeeder = Iterator.continually(Map(
    "fileName" -> ElFileBody("bodies/createAccount_0.json")
  ))
  .feed(customFeeder)
     .exec(http("Create New Account")
      .post("/messages")
       .body(StringBody("{" +
         "\n\t\"Static element1\": \"Static value\"," +
         "\n\t\"Static element2\": \"Static value\"," +

         "\n\"data\":"

         //I was trying following three options, certainly wrong, as I could not create proper request
            //  Approach 1 to give the file path directly without using custom feeder
                    //  + ElFileBody(("bodies/databodies/create_Account_0.json"))

            //  Approach 2 to give the file path through custom feeder  
                    //  + """${fileName}"""

            //  Approach 3 to create a JSON with static content and passing file name as a prameter.
                    // .body(ElFileBody("bodies/CreateAccountFullBody.json")).asJson

        + "\n\"}\"")).asJson
           .check(status.is(201)))

Файл "body / CreateAccountFullBody. json", используемый в третьем подходе

{
Static element1 : "Static value",
Static element2 : "Static value",
data :
  "data":"${fileName}"
}

Ответ -

Through cosole output I see that the JSON was not fed.
byteArraysBody={
        "Static element1": "Static value",
        "Static element2": "Static value",
"data":<function1>
"}"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...