Как реализовать multi-заглушку в одном json файле для одного и того же URL с помощью Wiremock? - PullRequest
0 голосов
/ 15 апреля 2020

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

Wiremock: v2.5.1 (автономно)

Mapping. json выглядит файл,

[
{
  "scenarioName": "Savings account Stub",
  "request": {
    "url": "/ws/*****",
    "method": "POST",
    "bodyPatterns" : [{
      "contains" : "AccountRequest"
    }
    ]
  },
  "response": {
    "status": 200,
    "bodyFileName": "******"
  }
},
{
  "scenarioName": "Current account Stub",
  "request": {
    "method": "POST",
    "url": "/ws/*****",
    "bodyPatterns": [
      {
        "contains": "AccountListRequest"
      }
    ]
  },
  "response": {
    "status": 200,
    "bodyFileName": "******"
  }
}]

Ошибка:

Exception in thread "main" wiremock.com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of com.github.tomakehurst.wiremock.stubbing.StubMapping out of START_ARRAY token

Есть ли возможность создать несколько заглушек для одного и того же URL в одном файле сопоставления? Может кто-нибудь сказать мне, что именно проблема?

1 Ответ

1 голос
/ 16 апреля 2020

Глядя на документацию по заглушке , я думаю, вы хотите, чтобы ваш mappings.json выглядел как ...

{ 
    "mappings": [
        {
            "scenarioName": "foo",
            "request": {},
            "response": {}
        }, {
            "request": {}
        }
    ],
    "importOptions": {
        "duplicatePolicy": "IGNORE",
        "deleteAllNotInImport": true
    }
}

Затем вы захотите сделать POST-запрос к /__admin/mappings/import с вашим mappings.json в качестве тела запроса. Причина этого заключается в том, что я считаю, что несколько сопоставлений в одном файле поддерживаются только с помощью параметра импорта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...